2013-04-25 83 views
1

我想,所以我改變了這種從舊dojo.require裝載到新的AMD裝載機遷移:如何從舊的dojo遷移到新的dojo AMD加載器?

 dojo.require("dojo._base.xhr"); 
     dojo.require("dojox.mobile.parser"); 
     dojo.require("dojox.mobile"); 
     dojo.require("dojox.mobile.ScrollableView"); 
     dojo.require("dojox.mobile.TabBar"); 
     dojo.require("dojox.mobile.TextBox"); 
     dojo.require("dojox.mobile.compat"); 
     dojo.require("dojox.mobile.deviceTheme"); 
     dojo.require("dojox.mobile.TabBarButton"); 
     dojo.require("dojox.mobile.View"); 
     dojo.require("dojox.mobile.Button"); 
     dojo.require("dojox.mobile.Switch"); 
     dojo.require("dojo.on"); 
     dojo.require("dijit.registry"); 
     dojo.require("dojo.aspect"); 
     dojo.require("dojo.ready"); 
     dojo.require("dojox.mobile.ListItem"); 
     dojo.require("dojo.dom"); 
     dojo.require("dojo.request"); 
     dojo.require("dojo.dom-construct"); 
     dojo.require("dojo.domReady!"); 
CODE 

這樣:

require(["dojo/_base/xhr","dojox/mobile/parser","dojox/mobile","dojox/mobile/ScrollableView","dojox/mobile/TabBar","dojox/mobile/TextBox","dojox/mobile/compat","dojox/mobile/deviceTheme","dojox/mobile/TabBarButton","dojox/mobile/View","dojox/mobile/Button","dojox/mobile/Switch","dojo/on","dijit/registry","dojo/aspect","dojo/ready","dojox/mobile.ListItem","dojo/dom","dojo/request","dojo/dom-construct","dojo/domReady!"], 
    function(xhr,parser,mobile,ScrollableView,TabBar,TextBox,compat,deviceTheme,TabBarButton,View,Button,Switch,on,registry,aspect,ready,ListItem,dom,request){CODE}) 

的是,這樣做是正確的? 我有一些其他腳本文件,我簡單加載如何使用新的AMD加載器來處理它們?

我非常新的所有編程的東西,所以請以軟我:)

+1

看起來很好。這裏有更詳細的說明 - http://dojotoolkit.org/reference-guide/1.7/releasenotes/migration-2.0.html。最後的測試是...它工作嗎?!我也認爲這是XHR的新方法 - http://dojotoolkit.org/reference-guide/1.8/dojo/request/xhr.html#dojo-request-xhr。 – 2013-04-25 11:59:26

回答

1

給一個嘗試從SitePen接觸全新的轉換器。在這裏閱讀:http://www.sitepen.com/blog/2013/04/03/introducing-dojo-amd-converter/

+0

我還沒有使用這個轉換器,但這看起來非常方便至少作爲一個起點。您的需求轉換是正確的,但需要考慮的重要事項是使用在新的AMD加載程序中創建的變量。一般來說,你的代碼中不應該有任何「dojo。」或「dijit」。所以'dojo.byId(node)'會變成'dom.byId(node)'。轉換器似乎處理這些轉換。 – Bitwize 2013-04-26 17:43:43

相關問題