我已经使用最新的 react 16.12 和 Webpack 创建了由“react-create-app”创建的应用程序
我需要依赖变量进行导入,例如:
if (process.env.SOMEVAR === "a1") Routes = require("./xxx").default;
if (process.env.SOMEVAR === "a2") Routes = require("./yyy").default;
if (process.env.SOMEVAR === "a3") Routes = require("./zzz").default;
运行命令:set "SOMEVAR=a1" && npm run build
这段代码将main.chunk.js
与这3个模块xxx
//里面,没有yyy
依赖zzz
SOMEVAR
我意外地发现,当我使用NODE_ENV
变量名时 -它就像我需要的那样工作!例子:
if (process.env.NODE_ENV === "production") Routes = require("./xxx").default;
if (process.env.NODE_ENV === "development") Routes = require("./yyy").default;
if (process.env.NODE_ENV === "test") Routes = require("./zzz").default;
运行命令:set "NODE_ENV=production" && npm run build
此代码将main.chunk.js
仅包含 xxx 模块!
问题:如何使任何其他变量具有相同的效果,而不是NODE_ENV
(我需要在内部构建仅在我之后使用的模块if
)?这个怎么运作?我在“WebPack docs”中找不到有关此效果的任何信息。