我正在尝试实现以下行为。我正在使用ng-inculde包含一个模板,我正在做这样的事情:{{something}}
我希望'something'与父控制器范围内的另一个变量进行双重绑定,并且能够设置父控制器范围的属性名称。因此,在一个包含,某些东西将引用苹果和其他包括,某些东西将引用橙色。
我做的是,我写了一个自定义控制器,它有一个lookAt(v)
方法,我在div的ng-init中调用这个方法,我使用ng-include和ng-controller。在这个方法中,我试图设置绑定但它不起作用。我假设,父范围已经定义了该变量。
这是我的代码:
mod.controller('FooController', ['$scope', function($scope) {
$scope.lookAt = function (variable) {
$scope.something=$scope[variable];
}
}]);
感谢您提供有关如何解决此问题的任何建议。
答案 0 :(得分:0)
在使用ng-include引入的模板中,而不是{{something}}
使用something()
,其中something
方法是在父控制器上定义的。
如果需要,您仍然可以初始化变量名称:
mod.controller('FooController', ['$scope', function($scope) {
$scope.initMethod = function(variable) {
$scope.variable = variable;
}
$scope.something = function () {
return $scope[$scope.variable];
}
}]);
答案 1 :(得分:0)
当使用Controller As Syntax时,你不能只在消费者(child的构造函数)中执行$scope.$parent
,你需要解决父类的数据对象,如:$scope.$parent.vmParent
。