我正在使用JSPM和Babel(仍然是v5)编写ES6代码,并使用Karma运行代码。我有一个奇怪的情况,我无法弄清楚两个模块中的循环依赖。
单独使用它可以正常工作,但是当我在其中一个模块中实例化一个对象时它会开始破坏。我不一定使用该对象,只需创建一个实例。
示例,简化:
// first.js
import second from './second';
export function functionInFirstModule(params) {
}
和
// second.js
import {functionInFirstModule} from './first';
export default functionInFirstModule({param});
现在我first.js
当我(任何地方)let someObject = new Map();
并且甚至不使用它时,我得到ERROR: 'Potentially unhandled rejection [3] TypeError: functionInFirstModule is not a function
。执行let someObject = {};
有效,但let someObject = Object.create();
没有,并且给了我同样的错误。
这是我误解了模块加载中的循环依赖关系还是JSPM中的错误?