如何检查是否存在 backone 回调?
How do I check for the existence of a backone callback?
假设我在我的 backbone 模型上安装了一个回调,如下所示:
model.on('some_event', () => {
console.log('it happened.');
})
有没有办法检查是否安装了此回调?我的目标是避免两次安装回调。
您可以检查您的模型是否注册了以下事件:
if(model._events && model._events['some_event']) {
// already registered
}
或者,如果您的目标只是防止多次注册回调,您可以在 on
调用之前调用 off
:
model.off('some_event').on('some_event', () => {
console.log('it happened.');
});
假设我在我的 backbone 模型上安装了一个回调,如下所示:
model.on('some_event', () => {
console.log('it happened.');
})
有没有办法检查是否安装了此回调?我的目标是避免两次安装回调。
您可以检查您的模型是否注册了以下事件:
if(model._events && model._events['some_event']) {
// already registered
}
或者,如果您的目标只是防止多次注册回调,您可以在 on
调用之前调用 off
:
model.off('some_event').on('some_event', () => {
console.log('it happened.');
});