Webpack:树摇动可以应用于预处理动态导入吗?

MFa*_*ave 5 dynamic-import webpack

我正在研究 webpack 中基于承诺的动态导入:

import('chunk').then(chunk => {...do something with chunk...})

在这种情况下,webpack 有办法消除死代码吗?似乎整个 esModule 都是默认导入的,而没有提前指定您需要什么。

更新

澄清一下,当您只需要模块“A.js”中的函数“f”时,您可以像这样动态导入它:

import('A.js').then(({f}) => {...})
Run Code Online (Sandbox Code Playgroud)

这是以下的动态模拟:

import {f} from 'A.js'
Run Code Online (Sandbox Code Playgroud)

然而,据我所知,webpack 无法通过在动态版本中修剪“A.js”中不需要的函数来优化捆绑包,即使我只解构并使用其中之一,我总是会得到整个模块可能的出口。

这只是 webpack 对动态加载模块的死代码检测的限制吗?