16

我使用 Webpack 来构建我的网站的 javascript。

一切正常,但我想将 require 调用到模板中(动态添加)。

我希望能够在构建后需要一个模块。(require 未定义到全局上下文中)。

可能吗 ?

谢谢

4

1 回答 1

8

您现在可以使用的一个选项是创建一个您可以全局公开的上下文window。我使用以下代码段取得了成功:

// Create a `require` function in the global scope so that scripts that have
// not been webpack'd yet can still access them.
window["require"] = function (module) {
    return require("./public_modules/" + module + ".js");
}

基本上你正在做的是将一个文件夹暴露给 webpack 并告诉它将该文件夹中的所有文件打包成一个块。然后,您可以var moduleName = require("module-name")在 webpack 脚本之外键入。

只要上面的代码片段在一个被捆绑和评估的文件中,你就会定义一个函数window(巧合地命名为“require”,但你可以称之为任何东西),它将使用 webpack 的 require 功能。

于 2014-07-03T00:14:40.100 回答