angularjs 控制器在指令中使用控制器作为不能工作
angularjs controller in directive using controllerAs can not work?
我正在尝试将一些数据放在我的指令创建的范围内。这是我的jsFiddle。
以下代码运行良好
.directive('directive1', function () {
return: {
scope: true,
controller: function ($scope) {
$scope.name = 'world';
}
}
})
<div directive1>
<p>{{ name }}</p>
</div>
但是这些代码不起作用
.directive('directive2', function () {
return: {
scope: true,
controller: function () {
this.name = 'world';
},
controllerAs: 'testCtrl'
}
})
<div directive2>
<p>{{ testCtrl.name }}</p>
</div>
我的代码有什么问题吗? 还是我对controllerAs
误解了什么?
ControllerAs 在 1.2.0 中添加了对指令的支持,因此您必须使用最新版本,而不是从链接的小提琴1.0.2
。这样它就可以按照您想要的方式工作。
请不要与指令控制器和普通控制器混淆!所以是的,直接可以有一个控制器,它控制某些东西。但它并不等同于普通控制器!
将指令逻辑放入指令控制器实际上没有问题,但指令控制器实际上用于跨指令通信。一个指令的控制器实例可以注入到位于同一元素(或子元素)上的另一个指令中。
"控制器作为"表达式适用于普通控制器。所以只要帮你自己的忙,把你的逻辑放到指令链接函数中。
相关文章:
- 为什么ng控制器不调用或工作或功能不工作
- AngularJS控制器不工作,为什么?(简单的控制器示例)
- 角度控制器功能赢得'不按指令工作
- console.log在角度控制器内不工作
- 角度控制器功能不;在指令内部调用时,似乎无法始终如一地工作
- 如何使Angular JS控制器与指令一起工作
- AngularApp中的多个控制器不工作
- 具有范围变量的控制器不工作
- 角度指令和属性Don'在控制器内创建和设置时无法工作
- AngularJS控制器没有'第一次刷新页面后无法工作
- 包含ngMock时控制器不工作
- 部分html视图's控制器未使用KendoPanelBar内容URL在指令模板URL中工作
- 在第三个控制器中使用时RootScope不工作
- angularJS-当我添加ngRoute时,控制器停止工作
- ng-显示无法从控制器工作
- extjs setLoading()不能从控制器工作
- 如何让这个AngularJS控制器工作($scope变量没有在控制器中初始化)
- NodeJS Express req.params,enrouten控制器工作不正常
- 我如何使ui-router控制器工作
- $emit from子控制器工作,但是$broadcast from父控制器不起作用