【发布时间】:2020-06-19 09:38:04
【问题描述】:
我想知道如果我们进行多次导入是否会产生性能成本,如下所示:
import { wrapper } from './components/wrapper';
import { error } from './components/error';
import { products } from './components/products';
在每个组件文件夹中,我都有一个 index.js 并将其导出为命名,如下所示:
export { default as wrapper } from '.wrapper';
相比:
将所有文件作为命名导入从同一来源导入,如下所示:
import {
wrapper,
error,
products,
} from './components';
在components 文件夹中,我有一个索引,用于收集和导出所有文件,如下所示:
export { wrapper } from '...';
export { error } from '...';
export { products } from '...';
【问题讨论】:
-
我不了解性能,但当我最终不得不对多个文件重复常见导入时,我会这样做。更容易改变一个地方而不是 10+
-
这取决于你是否捆绑。例如。 Webpack 等,或者您正在使用浏览器的
import?,如果您使用浏览器import,那么使用另一个名为./components的文件将是对服务器的另一个获取,因此理论上可能会更慢。我说的是理论,因为使用 http2/spdy 实际上也可以抵消这种影响。 -
你为什么还要关心性能?
-
@JonasWilms 每个人都应该关心性能。但我不确定这就是你的意思,而是“不要预先优化”。
标签: javascript reactjs ecmascript-6