【发布时间】:2018-08-31 09:22:30
【问题描述】:
HTML 代码:
<div ng-controller="MyController">
<div>{{ hello }}</div>
<div my-terminal>{{hello}}</div>
</div>
JS代码:
const app = angular.module('app', [])
app.controller('MyController', function ($scope) {
$scope.hello = 'Hello, AngularJS'
})
app.directive('myTerminal', function () {
return {
restrict: 'A',
terminal: true,
link: function () {
console.log('--- myTerminal')
}
}
})
请注意terminal 是true。
结果:
从angularjs文档中,我发现当terminal是true时,应用在同一元素上的任何其他优先级较低的指令都不会被执行,但我无法解释为什么<div my-terminal>{{hello}}</div>不会渲染表达式@ 987654330@
这个问题的小完整演示:https://github.com/freewind-demos/angularjs1-directive-terminal-issue-demo
【问题讨论】:
标签: angularjs angularjs-directive