【发布时间】:2021-03-30 12:53:28
【问题描述】:
假设我有一个带有 10 个方法的 typescript 类,并且该文件导出该类的一个新实例作为其默认导出。然后我有另一个文件,比如 React 函数组件,它导入这个类并调用该类的一个方法。
这将如何优化? Webpack/Babel 可以只为使用的方法提取代码,还是会包含整个类,我会有一堆未使用的代码?
避免类并导出每个函数会更好吗?
我的目标是让导出的包更小,同时让 Lighthouse 更少抱怨未使用的 JavaScript。
【问题讨论】:
-
webpack 等的思想树摇动处于模块级别,即导入/导出
-
一些上下文:github.com/rollup/rollup/issues/349。我想知道 Lighthouse 什么时候可以检测到未使用的类方法 - 为什么像 Webpack 或 Rollup 这样的打包工具不能……你确定是这种情况吗?
-
鉴于 JS 的动态特性,假设我们有一个类有一些以素数后缀结尾的方法,比如 f_2、f_3 f_5 等。还有一个函数 g(r) { if(r is prime && r
-
madflow:不,我不确定,但如果包变大而没有任何好处,最好选择可以删除该代码的模式。或者一开始就不写。 :)
-
@JohanNordberg 我会断言,在优化 treeshakable 代码时,避免类是模式:S
标签: javascript typescript webpack babeljs web-vitals