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

IT技术 javascript reactjs typescript ecmascript-6 material-ui
2021-05-09 22:22:00

我正在阅读 Material UI 文档,它指出:

请注意,在上面的示例中,我们使用了: import RaisedButton from 'material-ui/RaisedButton';而不是 import {RaisedButton} from 'material-ui';这将使您的构建过程更快,构建输出更小。

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

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

1个回答

关键不在于module是否具有默认导出,而在于您导入包含所有 Material UI 组件(material-uimodule)的module,而不是仅包含RaisedButton组件(material-ui/RaisedButtonmodule)module。

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