我已经阅读过这篇文章,但是这篇文章是关于$ rootscope中的名字的。我是静态的
How can I test $rootScope.$emit event?
我的问题是我的发音名称是dymaic,我该如何测试呢?
vm.$rootScope.$emit('FooEvent' + vm.numberCount, 'Foo');
vm.$rootScope.$on('FooEvent' + (vm.numberCount), function (event, data) {
});
答案 0 :(得分:0)
更好的方法是不要将事件名称设置为动态,并将vm.numbercount
放入事件的有效负载中。你可以这样做:
vm.$rootScope.$emit('FooEvent', 'Foo', vm.numberCount);
vm.$rootScope.$on('FooEvent', function (event, ...args) {
// args[0] => 'Foo'
// args[1] => vm.numberCount
});