Vas*_*its 2 javascript angularjs
似乎网上存在类似问题的一些问题,但没有解决方案适合我.
我有一个指令,让我们说包括这样的函数(在指令中):
link: function(scope, element, attrs) {
scope.myfunction = function (){
console.log('function run');
};
}
Run Code Online (Sandbox Code Playgroud)
女巫我想让它从一个控制器运行(调用它),像这样简单:
$scope.myFunction();
Run Code Online (Sandbox Code Playgroud)
所以我可以从指令代码之外的页面的一部分调用它,让我们这样说:
<button ng-click="myFunction()">Run</button>
Run Code Online (Sandbox Code Playgroud)
可能吗?
最后我通过这样的广播范围得到了解决方案.
在控制器中:
$scope.startFunction = function(){
$scope.$broadcast('startfunction');
};
Run Code Online (Sandbox Code Playgroud)
在指令中:
scope.$on('startfunction', function () {
console.log('function run');
});
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5591 次 |
| 最近记录: |