我正在尝试从子控制器(也使用controller as)访问父控制器的范围(使用controller作为语法)。
我尝试使用bindToController: true
以及在指令声明中简单地声明scope: true
,但是我似乎无法访问它。
angular.module("testapp").directive("testdirective", function () {
return {
restrict: 'E',
templateUrl: '../Scripts/AngularJS/Partials/testdirective.html',
scope: true,
bindToController: true
};
});
但是从控制器打印this
时,我看不到父作用域的任何内容:
function testcontroller() {
var self = this;
console.log(self);
}
我知道使用$ scope可能是一个简单的解决方案,但是这与我已阅读的所有正确做法背道而驰,我不想将两种做事方式混在一起。
答案 0 :(得分:0)
bindToController: true
的重点是将其与隔离范围一起使用,因为它绑定了传递给隔离控制器的范围的属性,因此您无需使用'$ scope'进行访问传入的值。
如何使用require? 托德·格托explains it excellent。