【问题标题】:Error: defineAlreadyDefined错误:defineAlreadyDefined
【发布时间】:2012-04-18 17:12:13
【问题描述】:

我收到此错误:Error: defineAlreadyDefined,仅在 dojo 中出现。

index.php

<script data-main="app" src="require.js"></script>

app.js

require({
    paths : {
        dojo : 'http://ajax.googleapis.com/ajax/libs/dojo/1.7.1/dojo/dojo'
    }
});

require([ 'dojo' ], function() {
   //something
});

我发现了一个类似的问题,但没有帮助我:

When dojo.js loaded via ajax multiple times get Error: defineAlreadyDefined

编辑:我搜索并认为我尝试使用 requiJS 和 Dojo 的方式是错误的。 http://dojotoolkit.org/features/1.6/async-modules

有什么想法吗?谢谢

【问题讨论】:

    标签: javascript dojo requirejs


    【解决方案1】:

    要使用带有 dojo 的外部加载器,您需要跳过定义 AMD 加载器的 dojo/dojo.js 文件。你的 require 配置应该是这样的:

    require({
        packages: [
            {
                name: 'dojo',
                location: 'dojo',
                main:'dojo/main' 
            }
        ]
    });
    

    然而,dojo 加载器在加载 jQuery 插件方面与 requireJS 一样出色,并且它附带了一些额外的插件,例如 dojo/has。我会认真考虑是否只使用它的加载器。

    【讨论】:

      【解决方案2】:

      我不确定你想在这里完成什么,但Dojo implements requireJS。因此你不需要 requireJS。

      对于 Dojo 库的正常使用,您会做的是:

      //call dojo script
      <script src="http://ajax.googleapis.com/ajax/libs/dojo/1.7.2/dojo/dojo.js"></script>
      <script>
          var dojoConfig = (function(){
              return {
                  async: true,
                  //in case you wanted to use your own library
                  paths: [{
                      name: "location/library"//your library path
                  }]
              };
          })();       
      
          require([
              "dojo/parser",
              "name/something",//calling 'somethong' from library
              "dojo/domReady!"
          ], function(parser, something /*your library obj*/){
              //your logic
              parser.parse();
              something.do();
          });
      });
      </script>
      

      【讨论】:

      • 之所以喜欢requireJS是因为我有很多jquery插件,还有dojo。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-02-24
      • 2013-07-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多