2017-01-24 38 views
0

Ich importiere einige Json aus anderen Dateien mit Es6, aber wenn ich versuche, sie in einem anderen Json-Objekt zu sammeln, fügte sie mit Variablennamen als Array-Name.Hinzufügen eines neuen Objekts zu einem anderen ohne Wrapper

element1.js

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

element2.js

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

, wenn ich diesen Code unten laufen;

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

const list = { elementVar1, elementVar2 } 

Liste gibt wie folgt zurück;

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

mein Ziel ist, diese Elemente ohne irgendeinen Wrapper so zu verarbeiten;

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

basicly möchte ich sie verketten

+0

Keine Notwendigkeit, es in '{}' zu wickeln, verwenden Sie einfach 'const list = elementVar', oder warum nicht einfach' list importieren von './Element.js'' – Satpal

+0

Es gibt kein JSON in Ihrem Beispiel, nur JavaScript-Objekte. –

Antwort

1

Dies tun sollten ...

import elementVar from './element.js' 

const list = elementVar; 

EDIT

Basierend auf geänderte Frage ... die Lösung wird wie folgt :

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

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

Sie sollten hinzufügen, dass dies die Referenz kopieren wird. 'const list = Object.assign ({}, elementVar);' um einen flachen Klon zu erstellen – CodingIntrigue

+0

Weil ich diesen Prozess nicht für nur ein Element machen möchte. Ich werde mehrere Elemente zusammenführen. Ich habe die Frage bearbeitet. –

+0

@ BarışTuna Bitte sehen Sie meine bearbeitete Antwort. –

Verwandte Themen