我得到了一个指令,它有一个属性传递的模型:Angular指令:传递作用域对象
use strict;
angular.module('ebs-front')
.directive('ebsIa', function() {
return{
restrict: 'A'.
scope: {
opened: '=ebsIaOpened',
model: '=ebsIaModel',
cb: '&ebsIaCb'
},
controller: function($scope, $uibModal){
console.log('check');
$scope.text = { text: 'test'};
$scope.$watch('opened', function(newValue) {
if(newValue === true){
var modalInstance = $uibModal.open({
controller: 'ImpactAnalyseController',
templateUrl: 'common/directive/ebs-ia-template.html'
});
}
});
}
}
});
在这个指令中,我需要做一些操作,然后打开一个模态窗口。所以对于这么好,但事情是,我希望$ scope.model也可以在ImpactAnalysisController中访问。
我的假设是$ scope.test和$ scope.model将自动在ImpactAnalysisController中可用,但显然创建了一个仅对controller:function部分有效的隔离范围。
什么是将范围的模型变量传递给ImpactAnalysisController的好方法?为什么它不是角度的默认行为?
如果我像下面那样定义我的指令,那么removeFromFilters(在本例中)IS在指令中可用,所以我有点不解。任何帮助将不胜感激...
use strict;
angular.module('ebs-front')
.directive('ebsIa', function() {
return{
restrict: 'A'.
scope: {
opened: '=ebsIaOpened',
model: '=ebsIaModel',
cb: '&ebsIaCb'
},
controller: 'ImpactAnalysisController'
};
)};
添加代码而不是屏幕截图 –
您面临的问题是您无法从属性获取值到您的控制器..正确..? –
的确,我将ebsIaModel传递给带有属性的指令。我期待$ scope.model在ImpactAnalysisController中包含该对象。 –