es6导入行为不正确

时间:2016-03-17 08:05:40

标签: ecmascript-6 babeljs

我正在开发一个新项目,之前我正在做类似2的事情,可以毫无问题地导入get函数。不知怎的,今天2给了我undefined但1给了我正确的答案。有谁知道为什么会这样?

p.s:我的节点版本是4.0.0

import api from "../../utils/APIUtils"; // --- 1
let get = api.get;
console.log(get); // function

import { get } from '../../utils/APIUtils'; // --- 2
console.log(get); // undefined now..

export default const APIUtils = {
  get(endpoint, query, options, done) { done(123) }
}

p.s:我在这里看到了1个用法,他们工作正常。

导出默认xxx: https://github.com/gpbl/isomorphic500/blob/master/src/utils/APIUtils.js

从括号导入:https://github.com/gpbl/isomorphic500/blob/master/src/services/photo.js

1 个答案:

答案 0 :(得分:1)

使用大括号导入用于非默认导出。 由于APIutils是默认导出的,因此您应该导入它而不使用大括号。

编辑:这是MDN

的解释