Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/470.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/35.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 将参数从Node.js传递到Webpack_Javascript_Node.js_Webpack - Fatal编程技术网

Javascript 将参数从Node.js传递到Webpack

Javascript 将参数从Node.js传递到Webpack,javascript,node.js,webpack,Javascript,Node.js,Webpack,我正在尝试使用Webpack构建我的应用程序的缩小版和未缩小版(js和css)。 这可以通过使用-p或-optimize minimize开关的命令行界面轻松完成: webpack webpack -p 但是,我希望只使用一个命令来执行这些操作,因此我决定编写一个小的Node.js脚本,该脚本将运行这两个Webpack版本: var webpack = require('webpack'); var config = require('./webpack.config'); webpack(c

我正在尝试使用Webpack构建我的应用程序的缩小版和未缩小版(js和css)。
这可以通过使用
-p
-optimize minimize
开关的命令行界面轻松完成:

webpack
webpack -p
但是,我希望只使用一个命令来执行这些操作,因此我决定编写一个小的Node.js脚本,该脚本将运行这两个Webpack版本:

var webpack = require('webpack');
var config = require('./webpack.config');
webpack(config, callback); // Build unminified version
因此,问题是:我能否将前面提到的
-p
参数从Node.js脚本传递到Webpack,以构建缩小版本?或者有更简单的方法来解决我的问题


当然,我可以使用,但我认为这不是一种真正的Node.js方式。

Key
p
是设置节点环境变量
process.env.Node\u env=“production”
的别名,如上所述Key
p
是设置节点环境变量
process.env.Node\u env=“production”的别名
如前所述

创建默认配置,以对未统一版本进行网页打包。使用该配置运行webpack。从代码更改配置并再次运行webpack。下面是一个代码示例

var webpack = require('webpack');
//assuming the config looks like this.

var config = {
    entry: "./entry.js",
    output: {
        devtoolLineToLine: true,
        sourceMapFilename: "./bundle.js.map",
        pathinfo: true,
        path: __dirname,
        filename: "bundle.js"
    },
    module: {
        loaders: [
            { test: /\.css$/, loader: "style!css" }
        ]
    },
    plugins: []
};

webpack(config).run(); // Build unminified version

config.output.filename = 'bundle.min.js'
config.plugins = [ 
        new webpack.optimize.UglifyJsPlugin({
            include: /\.min\.js$/,
            minimize: true
        })];


webpack(config).run(); // Build minified version

创建默认配置以将未统一的版本进行网页打包。使用该配置运行webpack。从代码更改配置并再次运行webpack。下面是一个代码示例

var webpack = require('webpack');
//assuming the config looks like this.

var config = {
    entry: "./entry.js",
    output: {
        devtoolLineToLine: true,
        sourceMapFilename: "./bundle.js.map",
        pathinfo: true,
        path: __dirname,
        filename: "bundle.js"
    },
    module: {
        loaders: [
            { test: /\.css$/, loader: "style!css" }
        ]
    },
    plugins: []
};

webpack(config).run(); // Build unminified version

config.output.filename = 'bundle.min.js'
config.plugins = [ 
        new webpack.optimize.UglifyJsPlugin({
            include: /\.min\.js$/,
            minimize: true
        })];


webpack(config).run(); // Build minified version

谢谢你的回答!但是,这是
节点_ENV
的快捷方式--optimize minimize
,由于第二个问题,所需的缩小操作已经完成。谢谢您的回答!但是,这是
节点_ENV
的快捷方式--optimize minimize
,由于第二个问题,所需的缩小操作已经完成。感谢您的回答!最后我使用了你的方法并分离了
config
对象,以避免竞争条件。谢谢你的回答!最后我使用了您的方法并分离了
config
对象以避免竞争条件。