我正在尝试在运行时使用on()
和un()
函数(和的别名addListener
)添加和删除侦听器removeListener
。我从使用 Sencha 检索的组件实例中获取函数引用getCmp()
Ext.Viewport.on('orientationchange', Ext.getCmp('foo').handleOrientationChange, foo, {buffer: 50});
Ext.Viewport.un('orientationchange', Ext.getCmp('foo').handleOrientationChange);
从煎茶文档:
un( eventName, fn, [scope], [options], [order] )
要删除的处理程序。这必须是对传递给 addListener 调用的函数的引用。
我不清楚为什么这不起作用。显然第二个函数引用与第一个不匹配,但为什么会发生这种情况?不应该Ext.getCmp('foo')
返回相同的对象吗?