我正在使用基于promise的方式在webpack中查看动态导入:
import('chunk').then(chunk => {...do something with chunk...})
。
在这种情况下,webpack是否可以消除无效代码?似乎默认情况下会导入整个esModule,而无需事先指定所需的内容。
更新
为了澄清,当您只需要模块“ A.js”中的函数“ f”时,可以像这样动态导入它:
import('A.js').then(({f}) => {...})
这是以下内容的动态类似物:
import {f} from 'A.js'
但是,据我所知,在动态版本中,Webpack无法通过修剪“ A.js”中不需要的功能来优化捆绑包,即使我仅解构和使用,我仍会获得整个模块许多可能的出口之一。
这仅仅是对动态加载模块的webpack死代码检测的限制吗?