我对角度很新,似乎无法解决这个问题。
在我的控制器中,我使用var vm = this
语法而不是使用$scope
,但在尝试附加$on
事件处理程序时,我得到vm.$on
不是函数错误
这有效:
$scope.$on('$viewContentLoaded', function () {
console.log(vm.myform);
});
这不是:
var vm = this;
vm.$on('$viewContentLoaded', function () {
console.log(vm.myform);
});
有些人可以解释一下原因。
由于 詹姆斯
答案 0 :(得分:1)
$ on是一个$ rootscope的方法,你无法访问其他地方。在角度js中,事件通信通过$ rootscope.broadcast和$ rootscope.emit进行,订阅该事件只有我们可以使用$ rootscope。$ on .To了解更多细节,你可以阅读
http://toddmotto.com/all-about-angulars-emit-broadcast-on-publish-subscribing/