2011-04-19 62 views
2

這裏有人使用EXTJS 4 BETA 3製作MVC應用程序嗎?並正常工作? 請幫助我如何?..如何用extjs 4.0 beta 3製作「MVC應用程序」?

我也跟着一步一步here ..和@Abdel Olakara幫助

,但仍然有一個錯誤......我在這裏的螢火蟲

[Ext.Loader] Synchronously loading 'AM.controller.Users'; consider adding 
Ext.require('AM.controller.Users') above Ext.onReady 

[Ext.Loader] Synchronously loading 'AM.store.Users'; consider adding 
Ext.require('AM.store.Users') above Ext.onReady 

this.getView('Viewport') is null 

當我在論壇上讀到this ...還有一些MVC指南的錯誤...

所以,如果你曾經讓它工作..怎麼樣?

這是我Application.js

Ext.Loader.setConfig({enabled:true}); 
Ext.create('Ext.app.Application', { 
    name: 'AM', 

    controllers: [ 
     'Users' 
    ], 

    views: [ 
     'user.List' 
    ], 

    launch: function() { 
     Ext.create('Ext.container.Viewport', { 
      layout: 'fit', 
      items: { 
       xtype: 'userlist' 
      } 
     }); 
    } 
}); 

我想要學習MVC的ExtJS的... 抱歉,如果我的英語不好..

+1

MVC功能尚未準備就緒..您必須等待Ext JS開發團隊完全發佈它,並提供所有錯誤修復和適當的文檔。 – 2011-04-19 09:33:41

回答

4

嗯,我想我應該收回我的話!通過sencha博客後,我取得了一些成功。最後,讓我的MVC「Skeleton」運行!

這裏是工作代碼:

Ext.Loader.setConfig({enabled:true}); 
Ext.create('Ext.app.Application', { 
    name: 'AM', 
    autoCreateViewport: false, 
    controllers: [], 

    launch: function() { 
     Ext.create('Ext.container.Viewport', { 
      layout: 'fit', 
      items: [ 
       { 
        xtype: 'panel', 
        title: 'Users', 
        html : 'List of users will go here' 
       } 
      ] 
     }); 
    } 
}); 

請注意,該代碼是非常少和已刪除論壇中報告的常見錯誤,並在這裏。下一步將是開始玩這個代碼並添加控制器,視圖等!

我會繼續更新這個答案。


更新:提到的前兩個錯誤是不實際的錯誤。即使它們顯示這些警告,它們也是警告和應用程序正常工作。你提到的第三個錯誤是塞子!

解決方案視口問題這裏有兩種方法來解決它。

  1. 使用autoCreateViewport: false,財產和定義視(我看到你在啓動方法定義的視口)
  2. 創建Viewport.js並將其保存在視圖文件夾。在這種情況下,我覺得我的啓動方法爲空,並將視口代碼移到Viewport.js文件中。但我得到一個錯誤:

    遺漏的類型錯誤:無法調用空

+0

Ext.Loader.setConfig({enabled:true});我正在尋找... 「我在通過sencha博客後取得了一些成功,最後,讓我的MVC'Skeleton'運行!」哪一個線程?可以給我的鏈接? – 2011-04-19 16:10:58

+0

實際上,我仍然收到錯誤'this.getView(「Viewport」)爲null',像這樣:http://www.sencha.com/forum/showthread.php?130257-Beta3-API-Doc-Issues&p=591682&viewfull= 1#post591682 .....現在我正在努力修復它' – 2011-04-19 16:17:30

+0

以及..沒有錯誤的我..你可以通過編輯問題發佈你的最新代碼? – 2011-04-19 17:28:53

0

我使用的ExtJS 4.1的「創造」。

在我的代碼[Ext.Loader] Synchronously loading 'OOO.store.News'; consider adding
Ext.require('OOO.store.News') above Ext.onReady
警告消息,如果我把

stores: [ 
    'News', 
], 

在我app/Application.js文件,而不是app/controller/OOO.js文件被調用。

所以把stores:[],放在控制器文件中。

+0

有趣,但它確實解決了警告問題。謝謝 – Ian 2013-02-12 06:09:15

相關問題