requeireJS 在使用时,在 defined 注入一个依赖,路径正确,却发现获得的值却是 undefined 。这时候就要考虑是否是“循环依赖”的原因了。
循环依赖就是:
a.js 依赖了 b.js,
b.js 又直接或者间接依赖了 a.js
这时候requirejs在解析的是后遇到这种情况就会停止解析该内容,所以获得的值就为 undefined
解决方法:
不要在最初 defined 的时候就加入依赖,而是在使用的时候再引入依赖。
var a = require(‘./../a.js‘);
console.log(a);