【问题标题】:Configuring dojo loader paths配置 dojo 加载程序路径
【发布时间】:2013-07-31 07:39:59
【问题描述】:

我在设置 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'
   },

谢谢。

【问题讨论】:

    标签: dojo requirejs amd


    【解决方案1】:

    这些都可以解决您的问题:

    1. 设置dojoConfig.tlmSiblingOfDojo = false
    2. 将“foo”定义为具有明确位置的包。

    【讨论】:

    • Dojo 文档:“baseUrl:(字符串)如果计算路径是相对的,则添加到计算路径的路径,如下面的过程所述。如果已定义,则具有功能 config-tlmSiblingOfDojo 为 false;否则,这是真的。”所以它已经是假的了。但是我已将 foo 放入一个文件夹,并将该文件夹定义为一个包。这似乎有效。所以打包“bar”,用“bar/foo”加载文件。
    【解决方案2】:

    看看这个链接:http://dojotoolkit.org/documentation/tutorials/1.6/dojo_config/

    也许从包到 modulePaths 的更改会对您有所帮助。

    否则我会以普通方式定义包:

    <script src="//ajax.googleapis.com/ajax/libs/dojo/1.6.1/dojo/dojo.xd.js"></script>
    

    问候

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-09-24
      • 2022-11-15
      • 2013-08-14
      • 1970-01-01
      • 2012-07-19
      • 1970-01-01
      相关资源
      最近更新 更多