Dlaczego to działa:Nazwany eksport vs eksportowania obiektu
const str = 'stuff';
export {
str
};
ale nie tym:
export default {
str: 'stuff'
};
Chciałbym importować je jako następujące:
import { str } from 'myLib';
Chciałbym przypisać wartość bezpośrednio w eksporcie i nie wymagać tworzenia zmiennej przed rozdaniem.
Również gdy próbuję:
export {
str: 'stuff'
};
pojawia się błąd:
SyntaxError: /home/karlm/dev/project/ex.js: Unexpected token, expected , (41:5)
39 |
40 | export {
> 41 | str: 'stuff'
| ^
42 | };
43 |
czyli po prostu jak działa składnia eksport. Wygląda * jak destrukturyzacja obiektu, co, jak sądzę, jest powodem, dla którego spodziewałeś się wyeksportować * obiekt *, ale dwa pojęcia są zasadniczo różne. Powiązane uwagi: http://stackoverflow.com/questions/33524696/es6-destructuring-and-module-imports – CodingIntrigue
Powiązane informacje: [ES6 Destructuring and Module import] (http://stackoverflow.com/q/33524696/218196) –
Związany również: [Javascript (ES6), eksport jako stały kontra eksport domyślny] (http://stackoverflow.com/q/33611812/218196) –