【发布时间】:2013-05-29 23:14:19
【问题描述】:
我在这里遵循多页 shim 共享模式: https://github.com/requirejs/example-multipage-shim
我使用相同的 common.js,并且设置非常相似且简单:
<script src="js/library/requirejs/require.min.js"></script>
<script>
require(['./js/config/common'], function (common) {
//go on...
});
</script>
一切正常,我可以继续在 require 闭包内运行操作,但我在 Firefox 中不断收到错误,抱怨匿名 define() 模块与上述代码不匹配。鉴于它是多么简单,而且我几乎完全遵循示例模式,我对为什么要得到它有点困惑。我没有在任何地方使用define()。在过去的 24 天内,requireJS 中的某些内容是否发生了变化(因为多页 git 存储库已更新)?
【问题讨论】:
-
是否有一个独立的 JSFiddle 你可以发布来说明这个问题?您说它与示例“几乎完全一样”,但是 如何 究竟是“非常” :-)
-
不幸的是,我正在一个巨大的平台上工作,如果我将上面所做的事情分解为 jsfiddle 它工作正常。所以让我相信页面上的其他内容可能存在问题或冲突。一个策略注意事项 - 如果只是在 common.js 中放置一个空的 define(function(){}) ,则不会抛出错误,只要我引用 requirejs.config() (即使没有 args ),我就会收到错误消息。 ..
-
好的,我相信问题与这里的stackoverflow.com/questions/15371918/… 相同,因为当我在匿名模块定义中使用 requirejs 时会出现问题。文档说这是不使用优化器时的问题,并说使用优化器来修复它。问题是——我们在进行开发时应该如何绕过它,即在未优化的环境中工作??
-
更奇怪的东西,如果我在 //go on... 行之前放一个 alert() 就不会发生错误。