【发布时间】:2016-08-16 04:51:25
【问题描述】:
这似乎很明显,但我发现自己对何时使用花括号在 ES6 中导入单个模块感到有些困惑。例如,在我正在处理的 React-Native 项目中,我有以下文件及其内容:
文件 initialState.js
var initialState = {
todo: {
todos: [
{id: 1, task: 'Finish Coding', completed: false},
{id: 2, task: 'Do Laundry', completed: false},
{id: 2, task: 'Shopping Groceries', completed: false},
]
}
};
export default initialState;
在 TodoReducer.js 中,我必须在没有花括号的情况下导入它:
import initialState from './todoInitialState';
如果我将 initialState 括在花括号中,则以下代码行会出现以下错误:
无法读取未定义的属性 todo
文件TodoReducer.js:
export default function todos(state = initialState.todo, action) {
// ...
}
我的带有花括号的组件也会发生类似的错误。我想知道何时应该对单个导入使用花括号,因为很明显,在导入多个组件/模块时,您必须将它们括在花括号中,我知道。
here 的 Stack Overflow 帖子没有回答我的问题,而是我问什么时候我应该或不应该使用花括号来导入 single 模块,或者我不应该在 ES6 中使用花括号来导入单个模块(这显然不是这种情况,因为我已经看到需要花括号的单个导入)。
【问题讨论】:
-
不,不一样。谢谢
-
不,不一样。谢谢
-
如何判断导出是默认还是命名?例如reac-router-dom 包的链接?假设我已经安装了一个包并想要导入,我将如何知道是否使用 {}
标签: javascript import ecmascript-6