【问题标题】:How to pack a module without dependencies using Webpack for 'node' target?如何使用 Webpack 为“节点”目标打包没有依赖关系的模块?
【发布时间】:2016-02-23 13:49:16
【问题描述】:

我有一个同构模块,我想在单个文件中发布。

使用 webpack 构建 web 是微不足道的。但是,对于target: 'node',我不想在输出中包含任何依赖项,因为它们保留在package.json 中,并且应该与标准require 一起使用。

有没有办法告诉 webpack 只挂钩到源目录中的 requires ,而保持其他需求(例如 require('lodash'))不变?

我发现的一个解决方法是使用externals 并将一些required 模块注入到输出文件中:

// webpack.config

const externals =
  _(fs.readdirSync('node_modules'))
  .reject(s => /^\./.test(s))
  .keyBy().mapValues((v, k) => _.camelCase(v))
  .value()


module.exports = {
  ...
  externals,
  ...
}

// output file, assuming I'm injecting externals somehow:

Object.keys(externals).forEach(function (name) {
  try {
    global[externals[name]] = require(name)
  } catch (e) {
  }
})

【问题讨论】:

    标签: node.js webpack


    【解决方案1】:

    【讨论】:

      猜你喜欢
      • 2021-08-02
      • 2016-04-08
      • 2018-10-07
      • 2018-10-14
      • 2019-08-19
      • 1970-01-01
      • 2015-12-28
      • 2019-06-06
      • 1970-01-01
      相关资源
      最近更新 更多