2013-07-31 229 views
1

我在設置dojo時遇到問題。在dojo配置中定義的任何東西似乎都使用localhost:8080/Scripts/foo.js路徑正確加載。但是,如果我再嘗試加載模塊沒有這個,說:配置路徑加載器路徑

require(['foo'], function (_foo) { }); 

然後客戶端請求失敗,與已嘗試路徑是localhost:8080/foo.js。顯然是錯誤的。

我需要改變什麼?

// Configuration for the dojo AMD module loader 
dojoConfig = { 
    baseUrl: "/Scripts", 
    packages: [{ 
     name: 'esri', 
     location: 'esri' 
    }, { 
     name: 'dojo', 
     location: 'dojo/dojo' 
    }, { 
     name: 'dojox', 
     location: 'dojo/dojox' 
    }, { 
     name: 'dijit', 
     location: 'dojo/dijit' 
    }, { 
     name: 'jquery', 
     location: '.', 
     main: 'jquery-2.0.2' 
    }, 

謝謝。

回答

2

這些要麼會解決你的問題:

  1. 設置dojoConfig.tlmSiblingOfDojo = false
  2. 將'foo'定義爲包含明確位置的包。
+0

道場文件:「的baseUrl:(字符串)時,預先準備,如果如下面描述的過程計算出的路徑是相對的所計算的路徑的路徑如果所定義的,具有特徵的配置-tlmSiblingOfDojo爲假;否則,它是真的。」所以它已經是假的了。不過,我已將foo放入一個文件夾,並將該文件夾定義爲一個包。這似乎工作。所以打包「bar」,用「bar/foo」加載文件。 – Tim