如何通过带标志的gulp-nodemon启动节点?
gulp.task('default', function() {
// listen for changes
livereload.listen();
// configure nodemon
nodemon({
// the script to run the app
"script": 'server.js',
"ignore": ["*.test.js", "logs/*"],
"ext": 'js',
env: { 'NODE_ENV': 'development', 'DEBUG':'*' },
}).on('restart', function(){
// when the app has restarted, run livereload.
gulp.src('server.js')
.pipe(livereload())
.pipe(notify('Reloading page, please wait...'));
})
})
我想用标志DEBUG = *启动它,以便将它与调试库一起使用。然而它不通过环境接受它。在脚本名称后添加它会导致错误。
如何在gulp脚本中向nodemon添加标志?
答案 0 :(得分:0)
看看this issue。建议设置stdout: true
或使用exec
选项,即:
nodemon({
...
exec: 'node DEBUG=*'
});
如果这不起作用,您可以尝试this issue中显示的选项args
和nodeArgs
,即:
nodemon({
...
args: ['DEBUG=*']
});
我自己没有尝试过这些方法,但我希望他们会帮助我们。
答案 1 :(得分:0)
Debug不再使用标志,就像您可以在几篇博文中阅读它一样。它现在使用env变量。
nodemon({
"script": 'server.js',
"ignore": ["*.test.js", "logs/*"],
"ext": 'js',
"env": { 'NODE_ENV': 'development', 'DEBUG':'*' },
})
或通过在shell上使用env var运行它
DEBUG=* node server.js