Javascript ES6模块中的循环依赖关系和对象创建
我正在使用JSPM和Babel(仍然是v5)来编写ES6代码,并使用Karma运行代码。我有一个奇怪的情况,我无法理解两个模块中的循环依赖关系 它本身工作正常,但当我在其中一个模块中实例化一个对象时,它开始崩溃。我不需要使用对象,只需要创建一个实例 例如,简化:Javascript ES6模块中的循环依赖关系和对象创建,javascript,jspm,ecmascript-6,Javascript,Jspm,Ecmascript 6,我正在使用JSPM和Babel(仍然是v5)来编写ES6代码,并使用Karma运行代码。我有一个奇怪的情况,我无法理解两个模块中的循环依赖关系 它本身工作正常,但当我在其中一个模块中实例化一个对象时,它开始崩溃。我不需要使用对象,只需要创建一个实例 例如,简化: // first.js import second from './second'; export function functionInFirstModule(params) { } 及 现在在first.js中,当我做(任何地方
// first.js
import second from './second';
export function functionInFirstModule(params) {
}
及
现在在first.js
中,当我做(任何地方)时,让someObject=newmap()代码>甚至不使用它,我得到了错误:'可能未处理的拒绝[3]类型错误:functionInFirstModule不是一个函数
。Doing让someObject={}代码>起作用,但是让someObject=Object.create()代码>没有,并给我相同的错误
这是我对模块加载中的循环依赖项的误解还是仅仅是JSPM中的一个错误?潜在的未处理拒绝是一个奇怪的错误。你在某处使用承诺吗?我想它与System.js加载有关。当我试图加载一个路径错误的模块(该模块不存在)时,我会遇到类似的错误。
// second.js
import {functionInFirstModule} from './first';
export default functionInFirstModule({param});