【发布时间】:2014-10-15 05:20:44
【问题描述】:
我正在使用 requirejs 编写应用程序。我编写的一些模块只是加载到多个组件中以便于访问。当我通过 requirejs 优化器运行我的应用程序时,这些模块导致以下错误:
The following modules share the same URL. This could be a misconfiguration if that URL only has one anonymous module in it:
F:/nemesis/nemesis/src/nemesis.js: nemesis, nemesis
F:/nemesis/nemesis/src/_nemesis.js: _nemesis, _nemesis
F:/nemesis/nemesis/src/rendering/rendering.js: rendering/rendering, rendering/rendering] }
这是它定义的每个模块的方式。
nemesis.js
define(["require", "exports", "_nemesis", 'rendering/rendering'], function(require, exports, _nemesis, Rendering) {
/* Definition code */
});
_nemesis.js
define(["require", "exports", "json!config.json"], function(require, exports, config) {
/* Definition code */
});
rendering/rendering.js
define(["require", "exports", "_nemesis", "./shaders", "./primitive", "util/logging/consoleLogger"], function(require, exports, nemesis, Shaders, Render, Logger) {
/* Definition code */
});
最后这就是我 requirejs 的配置方式:
baseUrl: "src/",
name: "<%= pkg.name %>",
paths: {
text: "../node_modules/text/text",
json: "../lib/requirejs-plugins/json",
"config.json": 'empty'
},
out: 'build/<%= pkg.name %>.js',
optimize: 'none'
是否配置或声明了模块错误,或者我在配置中遗漏了什么?
另外,我们从 typescript 生成的模块声明。打字稿编译器的不同参数可以解决这个问题吗?
【问题讨论】:
标签: javascript requirejs typescript