2012-02-25 2 views
0

작업 MVC 구조려고 4 : 수 없습니다의 ExtJS 나는이 같은 상점 내에서 모델을 포함하고있어

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 

여기에 무슨 일이 일어나는지 아는 사람이 있습니까?

감사합니다.

+1

생성자가 호출 되나요? 생성자 내부의 첫 번째 줄 앞에 console.log를 추가하여 코드에 있는지 또는 클래스를 정의하는 방식인지 확인하십시오. – sha

+0

console.log는 생성자 앞에 넣으면 시작됩니다. BTW, 오류 메시지는 모델을 포함하고 나면 나타납니다. – Samuurai

+0

정확히 어떻게됩니까? 생성자가 클래스 정의 안에 있습니다. 어디서 console.log를 넣을까요? btw, 저장소 정의가있는 파일의 전체 경로 및 이름은 무엇입니까? 소문자로 'unPro ...'라는 클래스 이름에 대한 첫 글자가 있다는 것을 알았습니다. 대개 학급 이름의 마지막 단어를 대문자로 표기해야합니다. – sha

답변

0

당신은 그렇게 복잡 할 필요가 없습니다. 스토어 정의 :

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 
}); 

p.s. 모델에 여분의 후행 쉼표가 있습니다.

0

상점의 모델 참조에 정규화 된 경로가 필요하지 않습니다. 모델의 이름 만 사용하면됩니다.