0
在我的指令,指令,我有以下事件定义:检测,如果事件侦听器附加在角
function wizard() {
return {
scope: {
raiseCancel: '&onCancel'
},
然后再往下,我尝试检查一个侦听器附加。如果没有,我想执行一些默认行为。
if (scope.raiseCancel) scope.raiseCancel();
else $window.history.back();
但显然scope.raiseCancel
总是会truthy因为角分配时没有事件侦听器附加调用angular.noop
一个匿名函数。如何检测我的事件是否有听众?
但我想,如果没有事件处理程序发生的默认行为。这将需要一个事件处理程序存在并返回false。 – adam0101
不,如果它什么都没有返回,它就会被执行。您需要返回false而不执行默认行为 –
已编辑该代码段,但是您告诉条件的第一部分可能无用 –