2016-06-06 10 views
3

Sag mal, ich habe ein Objekt wie {foo: 5, bar: 10} und ich will Export foo und bar von ihm getrennt, dann, wenn ich import {foo} from './path/to/file';ES6 Exportobjekteigenschaften separat

ich foo gleich 5 bekommen konnte, als ob ich tat export const foo = 5; export const bar = 10;

Wie kann ich es tun?

+0

'export const foo = obj.foo; export const bar = obj.bar; '... –

+0

Du solltest wirklich * export const foo = 5; export const bar = 10; ' – Bergi

Antwort

2

Exportierte Werte benötigen ihren eigenen Variablennamen auf oberster Ebene. Die einfachste Option könnte wie folgt sein:

const obj = {foo: 5, bar: 10}; 

export const {foo, bar} = obj; 

Wirklich obwohl, wenn das Objekt bereits in der Datei deklariert ist, können Sie die Ausfuhr mit den Werten erklären direkt besser dran.

+0

Was wäre, wenn ich nur den Standard' obj.foo' exportieren möchte? Was wären meine Alternativen? – Telokis

+0

@Telokis Ich bin mir nicht sicher, was du beschreibst? 'export default obj.foo;' ist gültig JS. – loganfsmyth

+0

Vergesst das Problem, weil obj.foo dynamisch generiert wird. Also müssen wir es "modulex.export" nennen und "eslint" ist damit nicht zufrieden. Danke trotzdem – Telokis