为什么导出/导入默认ES模块属性比命名模块属性更快?

时间:2018-01-24 22:28:20

标签: javascript reactjs typescript ecmascript-6 material-ui

我正在阅读Material UI文档,并说明:

  

请注意,在上面的示例中,我们使用了:   import RaisedButton from 'material-ui/RaisedButton';代替   import {RaisedButton} from 'material-ui';这将使您的构建成为可能   处理速度更快,构建输出更小。

我找不到任何理由说明为什么使用默认导出会使构建过程更快或构建输出更小。

我的经理要求我们不要使用默认导出,但较小的构建大小是此项目的重要目标。我通过Material UI提到了这个引用,他们说要找到证据。我想要一些证据,因为我试图用Babel编译它会使default更大,如果有的话。

1 个答案:

答案 0 :(得分:9)

关键是模块是否具有默认导出,而是导入包含所有材质UI组件(material-ui模块)的模块而不是仅包含模块的模块RaisedButton组件(material-ui/RaisedButton模块)。

绝对清楚:我们应该使用仅包含单个组件的模块,即material-ui/RaisedButton