为什么使用相同的“接口”使用导出和导出默认值?

时间:2018-05-28 01:39:52

标签: javascript ecmascript-6

原因是什么:

import something1 from './something1'
import something2 from './something2'

export default {
  something1,
  something2
}

export {
  something1,
  something2
}

为什么不可能这样做:

export default something
export something

谢谢。

1 个答案:

答案 0 :(得分:4)

  1. 对于您希望单个模块元素是库名称空间的情况。如果这是过去的日子:

    import { extend } from "jquery";
    import $ from "jquery";
    

    其中一个是导入命名导出,其中一个导入默认值。两者都有效。但总的来说,通常的做法是个人出口。

  2. 因为导出语句要么要求内联声明事物

    export const something = ...
    

    这意味着它也不能被重新分配为default ...... 或者它期望您导出一批命名值。

    export default something;
    export { something };