Angularjs子控制器获取父控制器范围变量无效?
我是Angularjs的新手,这是我的代码Angularjs子控制器获取父控制器范围变量无效?,angularjs,Angularjs,我是Angularjs的新手,这是我的代码 angular.module('remoteApp') .controller('ScreensavertabCtrl', function ($scope, $modal, $log, $state,Screensaverchpwservice, Screensaverchpwgetservice) { $scope.screensaverData = { screensaver:{
angular.module('remoteApp')
.controller('ScreensavertabCtrl', function ($scope, $modal, $log, $state,Screensaverchpwservice,
Screensaverchpwgetservice) {
$scope.screensaverData = {
screensaver:{
pwProtect: '1'
}
};
$scope.pwProtectOpen = function () {
if($scope.screensaverData.screensaver.pwProtect == true){
var modalInstance = $modal.open({
templateUrl: 'pwProtectModalContent.html',
controller: pwProtectModalInstanceCtrl
});
}
};
var pwProtectModalInstanceCtrl = function ($scope, $modalInstance) {
$scope.pwProtectCancel = function () {
$modalInstance.dismiss('cancel');
console.log($scope.screensaverData.screensaver.pwProtect)
};
};});
当我启用pwProtectCancel功能时,我想获得$scope.screensaverData.screensaver.pwProtect
值,我尝试使用“$scope.$parent.screensaverData.screensaver.pwProtect”无效
我对此很困惑
有什么想法吗?将$modal服务呼叫更改为
var modalInstance = $modal.open({
templateUrl: 'pwProtectModalContent.html',
controller: pwProtectModalInstanceCtrl
scope:$scope
}
你应该得到模态范围内的数据
文档中提到了范围选项
scope—用于模态内容的范围实例
$modal服务将创建所提供的
范围默认为$rootScope
它得到的默认值是rootscope。将$modal服务调用更改为
var modalInstance = $modal.open({
templateUrl: 'pwProtectModalContent.html',
controller: pwProtectModalInstanceCtrl
scope:$scope
}
你应该得到模态范围内的数据
文档中提到了范围选项
scope—用于模态内容的范围实例
$modal服务将创建所提供的
范围默认为$rootScope
默认设置为rootscope。假设在HTML中正确嵌套了控制器,则代码应按原样工作。假设在HTML中正确嵌套了控制器,则代码应按原样工作。