AngularJS指令之间的通信
AngularJS指令之间的通信
我对Angular.js还不熟悉,但是我的应用程序需要一些指令之间的通信。我阅读了一些关于link和require的文档,但是并不完全理解它们的工作原理。
这是一个简单的例子: live fiddle : http://jsfiddle.net/yw235n98/5/
- 2个指令:firstDir, secondDir :: 带有一些数据
- firstDir有一个点击函数,可以更改数据值
- 当触发firstDir的点击函数时,我也想在secondDir中更改数据。
HTML:
第一个指令:第二个指令: {{firstCtrl.data}}
{{secondCtrl.data}}
Javascript:
(function(){ var app = angular.module('myApp', []); app.directive("firstDir", function(){ return { restrict : 'E', controller : function(){ this.data = '初始值'; this.set = function(value){ this.data = value; // 与第二个指令通信??? } }, controllerAs : 'firstCtrl' }; }); app.directive("secondDir", function(){ return { restrict : 'E', controller : function(){ this.data = '初始值'; }, controllerAs : 'secondCtrl' }; }); })();