Javascript 未捕获引用错误:未为导入的模块定义值
下面是一个场景: index.jsJavascript 未捕获引用错误:未为导入的模块定义值,javascript,module,ecmascript-6,Javascript,Module,Ecmascript 6,下面是一个场景: index.js import test1 from './test1'; window.test1 = test1; test1.js import test2 from './test2'; var test1 = (function (){ var self = this; var x = {}; x.test2 = test2; var testValue = 'TEST VALUE'; let init = function(){
import test1 from './test1';
window.test1 = test1;
test1.js
import test2 from './test2';
var test1 = (function (){
var self = this;
var x = {};
x.test2 = test2;
var testValue = 'TEST VALUE';
let init = function(){
console.log ( x.test2() );
}
init();
return {
x: x,
testValue: testValue
}
})();
export default test1;
test2.js
var test2 = function () {
return (` value to use ${testValue} ` )
};
export default test2;
运行index.js时,我在test2.js中遇到以下错误
未捕获引用错误:未定义testValue
有没有一种方法可以使用testValue而不必传入它?您可以将test1转换为
类对象,然后在test2中使用这个.value
,它将使用test1实例的值
有没有一种方法可以使用testValue
而不必传入它
在执行函数之前,必须确保将其设置为全局变量。但使用globals通常是糟糕的设计。传入值更容易推理。因为您没有解释为什么要这样做,所以我只能给出这些建议。testvalue从何而来???在test2.js中,您必须定义什么是testvalue