在extjs中添加控制器时不显示视图

时间:2015-07-29 04:02:17

标签: javascript extjs

当我从 List.js 文件中的需要[] 中删除 StudentController 但我包含 StudentController时,我的视图工作正常没有显示。

这是我的List.js,需要StudentController

Ext.define('MyApp.view.main.List', {
extend: 'Ext.grid.Panel',
xtype: 'mainlist',

requires: [
    'MyApp.store.Student',
    'MyApp.view.main.StudentController',
    'MyApp.store.Faculty'       
],

title: 'Student Records',
scrollable: true,
margin: 20,
layout: {
    type: 'vbox',
    align: 'stretch'
},
controller: 'student',
reference: 'studentGrid',
frame: true,
collapsible: true,
store: {
    type: 'student'
},
collapsible: true,
columns: [
    { 
        header: 'Name', 
        dataIndex: 'name',
        editor: 'textfield',
        sortable: true,
        flex: 1 
    },

    { 
        header: 'Address', 
        dataIndex: 'address', 
        editor: {
            xtype: 'textfield',
            allowBlank: false
        },
        flex: 1 
    },
    { 
        header: 'Phone', 
        dataIndex: 'phone', 
        editor: 'textfield',
        flex: 1
    },
    { 
        header: 'Gender',
        dataIndex: 'gender',
        flex: 1
    }
],
selModel: 'rowmodel',
plugins: {
    ptype: 'rowediting',
    clicksToEdit: 1
},

dockedItems: [
    {
        xtype: 'toolbar',
        dock: 'top',
        items: [
                // items to add
            }]
        }
    ],

});

这是我的StudentController

 Ext.define('Ext.view.main.StudentController', {
    extend: 'Ext.app.ViewController',

    alias: 'controller.student',


onAdd: function(button, e, options)
{
    this.createDialog(null);
},

createDialog: function(record)
{
    var me = this,
        view = me.getView();
    me.dialog = view.add({
        xtype: 'student-form',
        viewModel: {
            data: {
                title: record ? 'Edit:' + record.get('name') : 'Add User'
            },
            links: {
                currentUser: record || {
                    type: 'User',
                    create: true
                }
            }
        }
    })
    me.dialog.show();
 },
  });

为什么我在 List.js 需要[] 中添加 StudentController 没有结果,而在删除它时一切正常。< / p>

1 个答案:

答案 0 :(得分:0)

  

为什么我在Require []中添加StudentController没有结果   在List.js中,删除它一切正常

因为没有定义了MyApp.view.main.StudentController类(因此无法满足require指令)。相反,如果Ext.view.main.StudentController中没有列出不存在的类,那么require就是实际可行的。