我是Angularjs的新手,这是我的代码,
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'不起作用?
我对此很困惑,
任何想法?
答案 0 :(得分:5)
将$ modal服务调用更改为
var modalInstance = $modal.open({
templateUrl: 'pwProtectModalContent.html',
controller: pwProtectModalInstanceCtrl
scope:$scope
}
你应该得到的数据不是模态范围。
文档提到了范围选项
范围 - 用于模态内容的范围实例(实际上 $ modal服务将创建一个提供的子范围 范围)。默认为$ rootScope
它获得的默认值是rootscope。