Sencha touch Sencha Touch MVC问题:未捕获的TypeError:对象函数(){superclass.apply(this,arguments);}没有方法“setActiveItem”
我有一个扩展面板的列表视图,我为itemtap事件定义了一个监听器,该事件对我的控制器执行Ext.dispatch,我基本上希望将表单视图设置为活动。在我的控制器的操作中,该方法如下所示:Sencha touch Sencha Touch MVC问题:未捕获的TypeError:对象函数(){superclass.apply(this,arguments);}没有方法“setActiveItem”,sencha-touch,Sencha Touch,我有一个扩展面板的列表视图,我为itemtap事件定义了一个监听器,该事件对我的控制器执行Ext.dispatch,我基本上希望将表单视图设置为活动。在我的控制器的操作中,该方法如下所示: itemTap : function(dataObj) { var views = dataObj.views, contactForm = views.contactForm, model = dataObj.model; console.log(dataObj);
itemTap : function(dataObj) {
var views = dataObj.views,
contactForm = views.contactForm,
model = dataObj.model;
console.log(dataObj);
contactForm.loadRecord(model);
this.application.Viewport.setActiveItem(contactForm, {type:'slide', direction:'right'});
}
我在这个操作的最后一行得到一个错误:uncaughttypeerror:Object函数{superclass.applythis,arguments;}没有方法“setActiveItem”,我很难破译这个错误消息。我做错了什么?这是一个函数吗?看起来是这样。@Matt它指的是注册Viewport类时创建的名称空间。@Matt,你让我找到了正确的答案。我需要将有问题的行替换为:MyApp.viewport.setActiveItemcontactForm,{type:'slide',direction:'right'};小写的vHey Buffalo,如果你解决了你的问题,我想你可以结束这个问题,对吗?一个技巧:将您的业务逻辑移动到控制器中并分派到控制器中。这样,视图只对图形部分负责。如果您的应用程序开始增长,则会导致您自己的可维护性问题。祝你好运