我想在使用MVC的ExtJS中开发应用程序。设计应用程序的目标是: 1.创建登录页面进行身份验证 2.成功登录后,我必须在单个页面中显示3个网格。这3个网格有不同的商店和模型。成功登录后extJS mvc加载视图
我能设计的登录页面,但我在准备转送至登录后下一个视图面临的问题。 =====>控制器/ Login.js
Ext.define('MyApp.controller.Login', {
extend: 'Ext.app.Controller',
views: ['Login'],
refs: [
{
ref: 'viewportmain',
selector: 'viewportmain'
}
],
init: function() {
this.control({
'viewport > panel': {
render: this.onPanelRendered
},
'button[action=submitLogin]': {
click: this.submitLoginForm
}
});
},
onPanelRendered: function() {
console.log('The panel was rendered');
},
submitLoginForm: function (button) {
///// DO NOT BOTHER ABOUT LOGIN AUTHENTICATION PROCESS
console.log('submitLoginForm function');
// var view = Ext.create('MyApp.view.Order', {});
var OrderController = this.getController('MyApp.controller.Order');
OrderController.showNext(button);
// I HAVE TRIED CERTAIN WAYS IN COMMENTED SECTION
// var view1 = OrderController.getOrderView();
// var form = button.up('form').getForm();
//var view1 = this.getOrder();
var form = button.up('form').getForm();
form.owner.up('viewport').getLayout().next();
//this.getViewportmain();
console.log('The ');
}
});
==== ==>控制器/ Order.js
=======>视图/ viewport.js
Ext.define('MyApp.view.Viewport', {
extend: 'Ext.container.Viewport',
alias: 'widget.viewportmain',
requires: [
'MyApp.view.Login',
'MyApp.view.Order',
'MyApp.view.DisplayGrids'
],
layout: 'fit',
items: [{
xtype: 'login'
}, {
xtype: 'form',
layout: 'fit',
title: 'new form'
}]
});
=======> app.js
Ext.Loader.setConfig({enabled:true});
Ext.application({
name: 'MyApp',
appFolder: 'App',
models:['Order'],
stores:['Order'],
controllers: [
'Login'//, 'Order'
],
autoCreateViewport: true
});
我试图使这些网格相结合的commoon面板 ========>视图/ DispalyGrid.js
Ext.define('MyApp.view.DisplayGrids' ,{
extend: 'Ext.form.Panel',
alias: 'widget.displaygrids',
layout: 'fit',
items: [{
xtype: 'order'
}]
});
我试图从DisplayGrid来电订购哪些最终会给出错误,因此我试图直接使用视图/顺序。
请指导我,我很长时间就在尝试这件事情,而我正在做一些非常错误的事情。 我试图this但每次它给了我错误
Cannot read property 'buffered' of undefined
在此先感谢。 :D
请看看[这个答案](http://stackoverflow.com/questions/14810340/load-new-view-after-the-loginin-extjs-4-mvc/14812218#14812218),让我知道如果它以任何方式帮助您解决问题。 – Izhaki 2013-03-03 16:46:26