Javascript 在js中构建对象,然后将其导出

Javascript 在js中构建对象,然后将其导出,javascript,ecmascript-6,Javascript,Ecmascript 6,我以前有一个带有对象的resolvers.js: export const resolvers = { value1: 'value'; value2: 'value'; } 然后: import { resolvers } from './graphqlresolvers'; 现在我需要用变量属性构建我的对象 let resolvers = {} resolvers.value1= 'value'; resolvers.value2= 'value'; export res

我以前有一个带有对象的resolvers.js:

export const resolvers = {
   value1: 'value';
   value2: 'value';
}
然后:

import { resolvers } from './graphqlresolvers';
现在我需要用变量属性构建我的对象

let resolvers = {}

resolvers.value1= 'value';
resolvers.value2= 'value';

export resolvers;
但我得到了这个错误:导出解析程序中出现意外的令牌

如果我这样做:

export default resolvers;
工作正常,但我的应用程序行为变得疯狂。。。。无错误,但服务器应用程序未向应用程序客户端发送正确的信息


对我来说,问题总是在于没有定义变量的自由,然后在代码末尾导出或不导出。有人可以解释我必须怎么做?

您可以在
导出
语句之后添加属性:

export const resolvers = {};
resolvers.value1 = 'value';
resolvers.value2 = 'value';
(需要尖端浏览器,a'la Chrome v62)

如果以后需要分配,您甚至可以这样做,因为绑定是动态的:


(需要最先进的浏览器,a'la Chrome v62)

您正在寻找语法

export { resolvers as resolvers }
或短

export { resolvers }
导出在别处声明的变量。当然,即使在动态构建对象时,也可以将导出与变量一起声明:

export let resolvers = {};

resolvers.value1= 'value';
resolvers.value2= 'value';
export let resolvers = {};

resolvers.value1= 'value';
resolvers.value2= 'value';