ExtJS 4. Попытка заставить работать структуру MVC - PullRequest
0 голосов
/ 26 февраля 2012

Я включил модель из магазина, как это:

Ext.define('EZMail.store.unProcessedStore', {
extend: 'Ext.data.Store',
    requires: 'EZMail.model.EmailDir',
    model: 'EZMail.model.EmailDir',
    constructor: function(cfg) {
    var me = this;
    cfg = cfg || {};
        me.callParent([Ext.apply({
        storeId: 'unProcessedStore',
        autoLoad:true,
        proxy: {
//... more config

И модель не может быть проще:

Ext.define('EZmail.model.EmailDir', {
extend: 'Ext.data.Model',
fields: [ 'emailDir' ],
});

Но я получаю эту ошибку в консоли разработчика:

Uncaught TypeError: object is not a function
(anonymous function)
Ext.ClassManager.instantiateext-all-debug.js:3948
(anonymous function)ext-all-debug.js:1555
Ext.define.getStoreext-all-debug.js:39754
(anonymous function)ext-all-debug.js:1548
(anonymous function)ext-all-debug.js:19698
Ext.Array.eachext-all-debug.js:953
Ext.define.createGettersext-all-debug.js:19684
Ext.define.constructorext-all-debug.js:19668
Base.callParentext-all-debug.js:2891
Ext.define.constructorext-all-debug.js:39669
Ext.Class.newClassext-all-debug.js:3188
(anonymous function)
Ext.ClassManager.instantiateext-all-debug.js:3948
(anonymous function)ext-all-debug.js:1555
(anonymous function)ext-all-debug.js:5693
isEventext-all-debug.js:10516
call

Кто-нибудь знает, что здесь происходит?

Спасибо

Ответы [ 2 ]

0 голосов
/ 27 февраля 2012

Ссылка на вашу модель в магазине не требует полного пути. Просто используйте название модели.

0 голосов
/ 27 февраля 2012

Вам не нужно делать это так сложно.Определение магазина:

Ext.define('My.store.Requests', {
    extend: 'Ext.data.Store',
    model: 'My.model.Request',
    autoLoad: false,
    remoteSort: true,
    proxy:{
        type: 'ajax',
        url: 'request/list.json',
        //override default param names
        startParam : "offset",
        limitParam :"max",
        sortParam : "sort",
        simpleSortMode:true,//required for directionParam to be used
        directionParam : "order",
        reader: {
            type: 'json',
            root: 'data'
        }

    },
    pageSize: 25
});

ps у вашей модели есть дополнительная запятая.

...