Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/463.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/40.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 巴贝尔,有nodemon脚本的网页包?_Javascript_Node.js_Webpack_Babeljs_Build Tools - Fatal编程技术网

Javascript 巴贝尔,有nodemon脚本的网页包?

Javascript 巴贝尔,有nodemon脚本的网页包?,javascript,node.js,webpack,babeljs,build-tools,Javascript,Node.js,Webpack,Babeljs,Build Tools,我想知道是否有一种方法可以用babel和nodemon配置webpack。我在网上搜索了很多,但没有发现任何有用的东西,或者可能是我,因为我对构建工具非常陌生。 我的包中有这个脚本。json: "start": "nodemon app.js --exec babel-node" 它传输我的代码,并在发生更改时重新启动服务器。我想知道是否有这种配置的网页与手表功能。我可以用webpack(运行服务器并观察更改,然后随着babel Transfile一起重新启动)吗?您不必使用nodemon,您

我想知道是否有一种方法可以用babel和nodemon配置webpack。我在网上搜索了很多,但没有发现任何有用的东西,或者可能是我,因为我对构建工具非常陌生。 我的
包中有这个脚本。json

"start": "nodemon app.js --exec babel-node"

它传输我的代码,并在发生更改时重新启动服务器。我想知道是否有这种配置的网页与手表功能。我可以用webpack(运行服务器并观察更改,然后随着babel Transfile一起重新启动)吗?

您不必使用nodemon,您可以使用

下面是一个示例脚本,我们称之为
backend-dev.js

const path = require('path');
const webpack = require('webpack');
const spawn = require('child_process').spawn;

const compiler = webpack({
    // add your webpack configuration here
});
const watchConfig = {
    // compiler watch configuration
    // see https://webpack.js.org/configuration/watch/
    aggregateTimeout: 300,
    poll: 1000
};

let serverControl;

compiler.watch(watchConfig, (err, stats) => {
    if (err) {
        console.error(err.stack || err);
        if (err.details) {
            console.error(err.details);
        }
        return;
    }

    const info = stats.toJson();

    if (stats.hasErrors()) {
        info.errors.forEach(message => console.log(message));
        return;
    }

    if (stats.hasWarnings()) {
        info.warnings.forEach(message => console.log(message));
    }

    if (serverControl) {
        serverControl.kill();
    }

    // change app.js to the relative path to the bundle created by webpack, if necessary
    serverControl = spawn('node', [path.resolve(__dirname, 'app.js')]);

    serverControl.stdout.on('data', data => console.log(data.toString()));
    serverControl.stderr.on('data', data => console.error(data.toString()));
});
您可以在命令行上使用

node backend-dev.js

当您更改服务器代码时,webpack将重新编译并重新启动服务器。

至于babel部分,我相信您已经介绍过了。我在我的
webpack.config.js
(webpack 2)中使用此选项:

但我不使用nodemon,所以很抱歉只回答了半个问题。我确实在开发中使用webpack dev server。和pm2在登台/生产中,我在登台时使用它的手表,因此我不必手动重新启动,而且它比webpacks dito更易于配置:

// pm2's ecosystem.json (just to be thorough):
"watch"        : "./",
"ignore_watch" : "node_modules", 

不过,在生产中没有手表,没有手表,没有手表,没有手表-出错的事情越少越好。

通常情况下,服务器部分不使用Webpack,它更倾向于捆绑客户端资产,如浏览器JS、CSS、图像、,等等。是否有任何特定的原因让您想在服务器上使用Webpack?在服务器上使用Webpack有很好的理由,例如,如果您在服务器端编译Reactcomponents@PatrickHund:你说得对,但由于OP是新的构建工具,我只是想确保他们知道为什么要使用它:)我正在尝试用我所学的构建一个基本的应用程序,是的,在不久的将来我也会使用react。所以我想我也会学习如何使用构建工具:)是否可以在webpack中进行任何类型的配置,以便它监视我的开发文件的更改,当有更改时,它会更新捆绑文件并运行捆绑文件?这正是我的代码所做的,您可以在其中放置任何webpack配置,注释的位置是。但是bundle文件在这里执行的位置是哪一部分呢?在最后,spawn语句我将babel加载程序放在配置中编译我的es6和stage-2语法,对吗?
// pm2's ecosystem.json (just to be thorough):
"watch"        : "./",
"ignore_watch" : "node_modules",