7

我正在使用 require.js 作为早午餐项目的一部分。此代码引发错误:

;require.config({ // require.config is not a function
paths: {
   jquery: "lib/jquery",
   underscore: "lib/underscore",
   backbone: "lib/backbone",
   localstorage: "lib/backbone.localStorage"
}
}); 

这是否意味着 requirejs 没有正确包含在项目中?

4

1 回答 1

17

如果您收到该错误,则可能是:

  • RequireJS 未加载。

    这可以通过打开浏览器的调试器查看网络请求并查看定义的文件是否require被浏览器询问并检查响应是否表明数据可用(即从服务器加载,从缓存加载)来诊断。

  • RequireJS 已加载但未正确初始化。

    如果在 RequireJS 之前加载了某些内容,并且以某种方式与 JavaScript 运行时混淆,从而导致 RequireJS 无法初始化,则可能会发生这种情况。例如,如果某些东西在全局空间中放置了一个define任何类型的全局名称,或者全局名称requirejs并且是一个函数,那么 RequireJS 将默默地放弃初始化。

    我会用包含 RequireJS 的文件中的断点来诊断它,以查看它是否完成执行。

  • RequireJS 已加载,但其他内容重新定义了require.

    我会在加载 RequireJSrequire 之后检查 的值。如果它config在那个时候定义了一个方法,那么以后肯定有别的东西弄乱了它。

于 2014-01-02T13:55:31.693 回答