【发布时间】:2020-09-24 11:39:21
【问题描述】:
我正在尝试优化我的 Webpack 包,并且我已经确定了大量数据是从我的一个依赖项中捆绑的。依赖项是 world-countries,它只是一个包含国家数据的巨大 JSON 对象数组。然而,我只在我的应用程序(一个简单的 React 应用程序)中使用了这些数据的一小部分。
所以我想的是,我想在我的 Webpack 配置中添加 一些东西,这将有效地让我将大对象映射到我正在使用的属性中,并避免拥有所有其余部分的数据最终在我的包中。
我目前关于如何执行此操作的唯一想法是编写一个节点脚本,该脚本运行 postinstall 或 prebuild 以导入模块、映射它并将其保存到新的 JSON 文件中的磁盘中。然后那个 JSON 文件就是我的应用导入的内容。
我正在寻找有关实现此功能的最佳方式的任何建议或想法,最好是以不影响我的应用程序代码并且只是 Webpack 配置的一部分的方式。
【问题讨论】:
-
您的应用总是使用相同的子集?你用json-loader吗
-
是的,我总是使用相同的子集。对 json-loader 不支持,它是在 >= 2.0.0 中作为核心 Webpack 的一部分添加的,因此不需要。
-
如果总是同一个国家,把你需要的复制到你的项目中
-
对不起,我不是说它总是同一个国家。我使用来自多个国家(或所有国家)的数据,但我需要的国家对象始终是相同的 4 个字段。这是该库在每个国家/地区对象上提供了 30 多个字段,这些字段使我的包膨胀。我不想在我的项目中维护一份详尽的国家/地区列表。
标签: javascript json reactjs webpack bundle