我正在将一个CLI库从Ruby移植到Node.js.在我的代码中,我在必要时执行几个第三方二进制文件.我不确定在Node中如何最好地完成此任务.
这是Ruby中的一个示例,我将PrinceXML称为将文件转换为PDF:
cmd = system("prince -v builds/pdf/book.html -o builds/pdf/book.pdf")
Run Code Online (Sandbox Code Playgroud)
Node中的等效代码是什么?
在python manage.py test我对django项目做出重大改变之后,我每隔一段时间就会运行一次.每当我在项目中更改并保存文件时,是否可以自动运行这些测试?早期检测错误会很有用(我知道rails有类似于rspec的东西).我正在使用鼻子和django-nose.提前致谢.
如何从gulp任务中运行npm脚本命令?
的package.json
"scripts":
{
"tsc": "tsc -w"
}
Run Code Online (Sandbox Code Playgroud)
gulpfile.js
gulp.task('compile:app', function(){
return gulp.src('src/**/*.ts')
.pipe(/*npm run tsc*/)
.pipe(gulp.dest('./dist'))
.pipe(connect.reload());
});
Run Code Online (Sandbox Code Playgroud)
我想这样做是因为运行npm run tsc不会给我任何错误,但如果我gulp-typescript用来编译.ts那么我会得到一堆错误.
我在我的项目中使用angular-cli.我想为部署添加一些gulp任务.我可以从gulp任务中调用"ng build"吗?
在使用Grunt进行几个项目后,我决定尝试一下Gulp.
我们工作的大多数项目都是基于Python的,我们通常从命令行运行它们的方式是:'python manage.py runserver'
使用Grunt,我找到了grunt-bg-shell插件,并且能够像这样运行我的命令:
// see: https://npmjs.org/package/grunt-bg-shell
bgShell: {
_defaults: {
bg: true
},
runDjango: {
cmd: 'python <%= paths.manageScript %> runserver 0.0.0.0:<%= port %>'
//cmd: 'python <%= paths.manageScript %> runserver'
}
}
grunt.registerTask('serve', [
'bgShell:runDjango',
'watch'
]);
Run Code Online (Sandbox Code Playgroud)
不幸的是,到目前为止我一直无法为Gulp找到类似的插件.我已经尝试过gulp-shell,gulp-run,gulp-exec,但都无济于事.大多数人都能在控制台上打印我的字符串,但我还没能运行实际的命令.
有任何想法吗 ?
有一个类似的问题是这样的 Call "ng build" from inside a gulp task
我管理我的 Gulp 以这种方式构建 Angular 以免溢出输出缓冲区
const child = require('child_process');
// Temporary solution, progress option makes angular more quiet,
// but I need to shut it up completely
gulp.task('build', ['compile'], (cb) => {
child.exec('ng build --progress false', (e, stdout, stderr) => {
cb(e);
});
});
Run Code Online (Sandbox Code Playgroud)
不幸的是,这只能用作临时解决方案,因为只要 Angular 项目中的文件数量继续增长,子进程.exec 的输出缓冲区迟早会溢出,所以我想使用子进程。 spawn 从 Gulp 构建 Angular,但每次我执行这个
// This is how I want to make it to work
gulp.task('build', ['compile'], () => {
child.spawn('ng', ['build']); …Run Code Online (Sandbox Code Playgroud) gulp ×3
angular ×2
javascript ×2
node.js ×2
python ×2
angular-cli ×1
cmd ×1
django ×1
nose ×1
ruby ×1
terminal ×1
testing ×1
tsc ×1
typescript ×1
unit-testing ×1