我正在尝试使用如下所示的需要js的版本包含JS文件:
<script data-main="main.57302bdda2413911ef49e5d48c63d777.js"
src="/etc/ui/iea/clientlibs/core/require/js/require.js">
</script>
控制台错误: require.js:1未捕获错误:没有定义调用 main.57302bdda2413911ef49e5d48c63d777
这里有语法错误吗? 如何在data-main属性中包含2个点的文件?
答案 0 :(得分:0)
在您的情况下,文件main.xxxx.js
必须位于(http)根目录中。
而不是file:///home/..../index.html
使用静态http服务器(list)
将/etc/ui/..../require.js
替换为require.js
。将main.xxxx.js
和require.js
放在同一目录中。在此目录中运行http服务器。转到http://127.0.0.1:xxxx
答案 1 :(得分:0)
在r.js优化器的build config中,如果您使用名称属性,它将使用该名称在您的捆绑文件中包含一个名称相同的模块,如下所示:
}), define("main", ["app"], function(a) {
a.on("before:start", function() {}), a.on("start", function(a) {}), a.on("application:ready", function() {
a.start()
})
})
当这个与此定义定义结合的捆绑文件重命名为main。*。js而不是main.js时,会抛出错误
require.js:1未捕获错误:没有定义调用main。*。js
因为它无法找到名为define call的模块,因为它具有main.js的define调用,如上所述。
如果我能够理解/正确地提示您的问题,那么您需要一系列文件,这些文件可能使用正则表达式,要求js应该理解,如果它们存在,则应该使用 name 属性的值。我不知道这个问题的解决方案,我想知道是否有人这样做,会非常有帮助。