未引用的默认参数是否会被 webpack 自动摇树?

问题描述

如果之前有人问过这个问题,我必须道歉,但我一直在 无法在线或在与摇树相关的 webpack 文档中找到答案。

tree-shaking 如何使用认参数工作?对于上下文:我特别关注 tree-shaking 的 webpack 实现如何处理认参数。

鉴于以下假设的应用程序结构:

/
|_ dependency/
| |
| |_ dependency.js
| |_ moderatelyLargeFile.js
|
|
|_src/
  |
  |_ application.js
  |_ someSmallFile.js

以及每个文件中的以下代码

dependency.js

import moderatelyLargeFile from './moderatelyLargeFile.js';
import { someParsingFunction1,someParsingFunction2 } from 'somewhere-else-dependency';

export default function parseSomeFile(file = moderatelylargeFile) {
  let parsedResult = { ...someParsingFunction1(file),...someParsingFunction2(file) };
  return parsedResult;
}

application.js

import parseSomeFile from './dependency/dependency.js';
import someSmallFile from './someSmallFile.js'
let result = parseSomeFile(someSmallFile);
// Do other application stuff with result

moderatelyLargeFile.js 会被捆绑到 application.js 的 webpack 构建中吗? webpack 是否足够聪明,知道认参数永远不会被引用,因为单个调用提供了该参数?或者 moderatelyLargeFile.js 是否总是被捆绑,因为它是函数定义的一部分?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)