我已经开始使用 koa

我的理解是 nodemon 是节点Universe中的首选解决方案,但我因为--harmony而获得错误国旗(KOA要求):

$ node_modules/.bin/nodemon /path/to/node-unstable/bin/node app.js
/path/to/node-unstable/bin/node --harmony $@
                     ^^^^^^^
SyntaxError: Unexpected identifier
[nodemon] app crashed - waiting for file changes before starting...
.

有帮助吗?

解决方案

node_modules/.bin/nodemon --harmony-generators app.js应该足够

其他提示

我想推荐你“pm2”: http://pm2.keymetrics.io/

pm2是一个过程管理器。 它管理您的应用程序状态,因此您可以启动,停止,重新启动和删除进程。

您可以轻松安装PM2(通常在您的计算机上)打字: sudo npm安装-g pm2

基本上PM2在查看代码中的一些更改时,他会随时重新启动过程,如果您的进程崩溃他将重新启动并且错误将记录.. 有关更多信息,请查看文档页面: http://pm2.keymetrics.io/docs/usage/cluster-mode/

设置本GULP任务中的“execmap”选项适用于我:

var nodemon = require('gulp-nodemon');

gulp.task('serve-dev', function() {
    var options = {
        script: './src/server/app.js',
        execMap: { 
            "js": "node --harmony"
        },
        delayTime: 1,
        env: {
            'PORT': port,
            'NODE_ENV': 'dev'
        },
        watch: ['./src/server/']
    };

    return nodemon(options);
});
.

显然,您的其他选项可能有所不同,但是当我学习某些东西时,我包括整件事,因为我学习只能看到答案中的最小值。

我最近完成了使用KOA创建一个简单的Web API,以及在代码更改后的重新加载动作我使用 Babel-watch

使用它的优势已在repo中陈述:

如果您厌倦了使用babel节点以及nodemon(或类似的解决方案)。上述设置如此严重执行的原因是Babel节点本身的启动时间。Babel-Watch只开始在“Master”过程中禁止Babel,其中它也开始了文件观察者。在该过程中执行局部局部。在文件观察器事件上,它会产生一个纯节点进程,并将父进程与源地图一起传递转发代码。这允许我们避免每次重新启动JS脚本/应用时加载Babel和所有Deps。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top