不使用包装器将新对象添加到另一个

时间:2017-01-24 12:05:59

标签: javascript ecmascript-6

我使用es6从其他文件导入一些json但是当我尝试将它们收集到另一个json对象中时,他们使用变量名称作为数组名称添加。

element1.js

module.exports = {
   'element1': { foo: 'bar' }
}

element2.js

module.exports = {
   'element2': { foo: 'bar' }
}

当我在下面运行此代码时;

import elementVar1 from './element1.js'
import elementVar2 from './element2.js'

const list = { elementVar1, elementVar2 }

列表返回如下;

{
  elementVar1: {
     element1: {
        foo: 'bar'
     }
  },
  elementVar2: {
     element2: {
        foo: 'bar'
     }
  }
}

我的目标是处理这些元素,而不使用任何这样的包装器;

{
   element1: {
      foo: 'bar'
   },
   element2: {
      foo: 'bar'
   }
}

基本上我想连接它们

1 个答案:

答案 0 :(得分:1)

这应该......

import elementVar from './element.js'

const list = elementVar;

修改

基于改变的问题......解决方案如下:

import elementVar1 from './element1.js'
import elementVar2 from './element2.js'

const list = Object.assign({}, elementVar1, elementVar2);