小编jan*_*s91的帖子

在 webpack 中将库配置为外部库不适用于 UMD 作为 libraryTarget

我在过去两天尝试了这个,但我无法让它像预期的那样工作:我想构建我自己的 JavaScript 库并将它注册到一个已经存在的命名空间(“OCA” - 在这种特殊情况下)。正如您可能理解的那样,我不想被迫放弃现代方法,例如通过打字稿或模块进行类型安全。

因此,我使用webpack 2和 thelibraryTarget: umd在“OCA.Ocr”下注册输出(我的库名为“Ocr”)。这像预期的那样工作,但是当涉及到我想要使用的点时,例如underscorejs,因为它将在应用程序中全局可用,库也应该交付给,我无法让它工作。我遵循了 webpack 配置文档,它说externals配置选项应该是要走的路:

externals: { // object
    angular: "this angular", // this["angular"]
    react: { // UMD
      commonjs: "react",
      commonjs2: "react",
      amd: "react",
      root: "React"
    }
  }
  // Don't follow/bundle these modules, but request them at runtime from the environment
Run Code Online (Sandbox Code Playgroud)

我按照指南的建议使用它,但它不起作用:

/* global __dirname, require, module*/

const webpack = require("webpack");
const UglifyJsPlugin = webpack.optimize.UglifyJsPlugin;
const path = require("path");

module.exports = function (env) {
  let target …
Run Code Online (Sandbox Code Playgroud)

javascript webpack umd

5
推荐指数
1
解决办法
4901
查看次数

标签 统计

javascript ×1

umd ×1

webpack ×1