我有一個簡單webpack.config.js傳遞命令行參數webpack.config.js
module.exports = {
entry: "./app.js",
output: {
filename: "bundle.js"
},
}
而且我想通過命令行參數來傳遞值entry
和output
。這是可能的,我將如何做到這一點?
我有一個簡單webpack.config.js傳遞命令行參數webpack.config.js
module.exports = {
entry: "./app.js",
output: {
filename: "bundle.js"
},
}
而且我想通過命令行參數來傳遞值entry
和output
。這是可能的,我將如何做到這一點?
webpack.config.js
也可以導出可以返回conf對象的env函數。因此,你可以有一個的WebPack配置,如:
module.exports = env => {
return {
entry: env === "production" ? "./app.js": "app-dev.js",
output: {
filename: "bundle.js"
},
}
};
,然後從命令行(或的package.json)這樣的WebPack撥打:
webpack --env=production
這不適用於Webpack 1嗎?因爲它會引發配置文件不返回對象的錯誤 – Matho
您可以使用argv包並設置變量。你必須在module.export
之前完成。
謝謝,我一定會嘗試。但是有沒有更簡單的方法,而不需要額外的包參考?畢竟,webpack.config.js只是javascript代碼。 – user1934212
你可以通過命令行傳遞--env = test,然後你可以導出一個env函數,它返回的是一個對象而不是直接的https://webpack.js.org/configuration/configuration-types/#exporting- a-function-to-use-env – Axnyff
您可以閱讀以下內容:http://justindavis.co/2014/11/24/using-command-line-arguments-in-a-node-script/ – PRAISER
您是否嘗試過使用[環境變量(HTTPS: //webpack.js.org/guides/environment-variables/)? –