Webpack不尊重package.json中的“module”字段

时间:2017-10-09 09:15:18

标签: webpack webpack-2 package.json dead-code tree-shaking

我想在 Webpack 中找出树木震动,我发现在 Example1 上运行-webpack -optimize-minimize是11kB ,在 Example2 时,它是7kB。

图书馆Rambdapackage.json中有一个字段模块。据我所知, Webpack 不尊重它,我需要明确引用esm文件位置。

问题是错误或功能?

示例1

import {add} from 'rambda'

function fn(x) {
  return add(2)(x)
}
console.log(fn(3))

例2

import {add} from 'rambda/dist/rambda.esm.js'

function fn(x) {
  return add(2)(x)
}
console.log(fn(3))

1 个答案:

答案 0 :(得分:0)

我发现这是一个记录在案的错误 - https://github.com/webpack/webpack/issues/4674

  

目前的行为是什么?   当module的package.json包含浏览器,模块和&主要字段,webpack默认捆绑浏览器构建。

该漏洞已有6个月没有解决,因此解决方案很难看 - 从package.json移除浏览器字段,因此Webpack可以使用模块字段。