假设我有一个模块 (./my-module.js
),它有一个应该作为其返回值的对象:
let values = { a: 1, b: 2, c: 3 }
// "export values" results in SyntaxError: Unexpected token
所以我可以像这样导入它们:
import {a} from './my-module' // a === 1
import * as myModule from './my-module' // myModule.a === 1
我发现的唯一方法是对导出进行硬编码:
export let a = values.a
export let b = values.b
export let c = values.c
// or:
export let {a, b, c} = values
这不是动态的。
是否可以导出对象的所有值?
最佳答案
我真的不能推荐这个解决方案解决方法,但它确实有效。您可以使用命名导出每个成员,而不是导出对象。在另一个文件中,将第一个模块的命名导出导入到一个对象中,并将该对象导出为默认对象。还可以使用 export * from './file1';
values/value.js
let a = 1;
let b = 2;
let c = 3;
export {a, b, c};
values/index.js
import * as values from './value';
export default values;
export * from './value';
index.js
import values, {a} from './values';
console.log(values, a); // {a: 1, b: 2, c: 3} 1
关于module - ES6 导出对象的所有值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29844074/