2012-02-01 60 views
5

這可能使用v1.6.1嗎?由於我的客戶端的dojo部署的Xdomain配置,每次dev代碼更改時都需要執行新的構建。正如你可以想象的,這是一個浪費時間。DOJO構建不包含DOJO基礎

從我看到的所有東西都無法免除由DOJO規則構建的核心。所以我想知道是否有辦法打破規則(修改Rhino呼叫?)以達到我需要的地方。

回答

2

一對夫婦的想法。

  1. 可避免建築最道場(dijit的,DojoX中),但我想你已經知道
  2. 你正面臨這種限制似乎很奇怪。有沒有什麼方法可以上傳您在開發過程中編輯的特定JS文件?

也許如果您提供有關客戶端設置的更多詳細信息,我可以幫助您圍繞此問題集思廣益。

更新 以下是我認爲您需要的:Customize Dojo Base in Build。這使您可以指定要包含的dojo基礎的特定位。

這適用於1.7以前的版本,所以你應該很好。

似乎正是你想要的東西:

layers: [ 
    { 
     name: "dojo.js", 
     customBase: true, 
     dependencies: [ 
     ] 
    }, 

// ... remainder of profile 

] 

這會給你道場的絕對最低限度(這你還不需要爲您的開發方案,但將大幅減少的量文件處理)。

對於其他用例,您可以使用dependencies屬性添加來自dojo core的其他內容。

更新2: 這裏有一對夫婦的構建時的優化建議:

1)不要實習生字符串,不壓縮,在開發的時候。 有可以通到避免這些耗時的步驟的arg值(例如爲ant構建):

<arg value="internStrings=false"/> 
<arg value="layerOptimize=false"/> 

2)建立到RAM磁盤,以加快文件的複製

+0

感謝您的反饋mtyson。爲了進一步豐富這一點,這個應用程序非常龐大,至少有15個不同的團隊,有4-10人在工作。因此,客戶選擇在演示服務器上將獨立服務器上的dojo代碼分離出來。所以,應用程序中的所有內容都是Xdomain。 – 2012-02-01 20:02:41

+0

因此,即使對於開發人員,您也必須將應用程序本身和JS代碼庫部署到不同的域?你需要的是讓開發人員儘可能少地構建(包括他們正在工作的位)的能力,以便他們可以獲得xdomain版本並測試它......思考...... – mtyson 2012-02-02 00:47:33

+0

好的,已更新答案是,我想我找到了一些能爲你工作的東西。 – mtyson 2012-02-02 02:14:27

1

道場支持mix-和 - 匹配 - 所以你可以使用xdomain和/或定製構建不變的東西 - 並且對經常變化的JS /構件使用常規的dojo.require - 然後只需要推動那個JS去看看沒有變化的變化新的xdomain /自定義生成/部署

您可以explore using local modules with xdomain build。此外,Dojo允許使用多個自定義構建 - 因此您可以爲不會發生太大變化的小部件進行穩定的自定義構建,而爲頻繁更改的代碼構建更小的構建版本。

+0

謝謝維傑。我真正需要做的是找到一種方法來創建一個完全排除道場基礎的構建。我知道這不是構建過程的方式,所以我正在尋找一種「解決方法」,如果有的話。 – 2012-02-01 20:22:51