【问题标题】:Webpack doesn't respect 'module' field in package.jsonWebpack 不尊重 package.json 中的“模块”字段
【发布时间】:2018-03-20 10:44:02
【问题描述】:

我试图弄清楚 Webpack 中的 tree-shaking,我注意到在这个 Example1 上运行 -webpack -optimize-minimize 是 11kB,而在 Example2 上是 7kB。

Rambda 在其package.json 中有一个字段module。据我所见, 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))

【问题讨论】:

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


    【解决方案1】:

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

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

    该错误已 6 个月未解决,因此解决方案很难看 - 从 package.json 中删除 browser 字段,因此 Webpack 可以使用 module 字段。

    【讨论】:

      猜你喜欢
      • 2023-01-23
      • 1970-01-01
      • 1970-01-01
      • 2017-07-31
      • 1970-01-01
      • 2016-06-29
      • 2011-12-15
      • 2015-04-22
      • 1970-01-01
      相关资源
      最近更新 更多