Javascript Sencha touch在比赛中有更好的练习
我有一个按钮在Sencha(触摸)在一个行动按钮。此按钮在每个视图中具有不同的功能。当我更改视图时,控制器会为按钮设置正确的功能:Javascript Sencha touch在比赛中有更好的练习,javascript,sencha-touch,extjs,Javascript,Sencha Touch,Extjs,我有一个按钮在Sencha(触摸)在一个行动按钮。此按钮在每个视图中具有不同的功能。当我更改视图时,控制器会为按钮设置正确的功能: myButton.on("click", function() {}); etc. 切换视图时,我首先需要调用: myButton.off("click"); 然后,我可以使用以下内容再次绑定单击: myButton.on("click", function() {}); 如果我不取消功能,两个单击事件都将触发。有没有更快的方法绑定新事件并刷新所有其他绑定的
myButton.on("click", function() {}); etc.
切换视图时,我首先需要调用:
myButton.off("click");
然后,我可以使用以下内容再次绑定单击:
myButton.on("click", function() {});
如果我不取消功能,两个单击事件都将触发。有没有更快的方法绑定新事件并刷新所有其他绑定的事件?您需要使用addListener和removListener方法,例如:
var myFunction = function () { };
myButton.addListener("click", myFunction);
myButton.removeListener("click", myFunction);
要使其工作,您需要将相同的函数对象传递给这两个方法,这意味着您在调用addListener时不能内联声明函数
删除所有处理程序非常容易:
myButton.clearListeners();
on/off的作用完全相同,因为on是addListener的简写。然后可以使用clearListeners(),它将删除所有附加的处理程序。为什么没有myButton。clearListeners(“单击”);功能,是否在技术上难以实现?我指的是Sencha Touch的建筑设计。