javascript - 为什么你不应该在 ES6 中使用 import all

标签 javascript reactjs ecmascript-6 es6-modules

所以我最近开始学习 React 并注意到所有文档都有看起来像其他的导入:

import { Apples, Bananas, Oranges } from 'fruits';

但是在研究 React 时我发现这种语法同样有效:

import * as Fruits from 'fruits';

我的问题:使用 import all 语法是否有任何性能损失或逻辑冲突?

如果没有,那么我将继续使用该语法。我宁愿说得更详细一点,也不必担心确保所有内容都已导入。

最佳答案

最好用第一种方式。至少在一件事上:总是明确地写出你想使用的东西。这是所有框架/语言的最佳实践。

如果你有一些 tree-shaking,一些未使用的模块将不会被加载,一切都应该是好的(就像@zerkms 说的)。 但这是在最好的情况下,即使是最好的 tree shaking 也不是完美的,即使你不使用它们,你仍然可以导入一些导入。 如果你的项目是“小”的,那应该没问题。如果在您的项目中加载数百个内容,情况可能会有所不同。

当您构建项目时,您也会浪费时间进行 tree-shaking 分析。

因此,仅仅因为您不想“通过写两个词来浪费时间”,您就会在每次构建上浪费时间,并且可能会对性能产生影响

关于javascript - 为什么你不应该在 ES6 中使用 import all,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47294904/

相关文章:

javascript - 在 Ajax 弹出窗口中显示 PHP 输出

javascript - 如何使用 showErrors 函数显示集中错误消息并更改输入边框颜色

javascript - AIM 7 使用 .aba 文件 - 需要将其解压

javascript - 在 React Native/Javascript 中比较对象数组与字符串的值

javascript - 如何托管 Firebase 函数和单页应用程序?

javascript - memoize 函数可以使用 ES6 Map 还是哈希表?

javascript - 需要在http响应后运行该变量

javascript - Position Fixed - 设置宽度等于容器

javascript - React中的setInterval更新状态但不识别时间何时为0

javascript - 在reactjs中返回带有更新数组的整个对象