Terminal 将参数发送到gulp任务
关于这个话题还有其他的问题,但不是我所希望的 下面是我的gulpfile.js的简化版本Terminal 将参数发送到gulp任务,terminal,gulp,arguments,parameter-passing,gulp-watch,Terminal,Gulp,Arguments,Parameter Passing,Gulp Watch,关于这个话题还有其他的问题,但不是我所希望的 下面是我的gulpfile.js的简化版本 var gulp = require('gulp'); var sass = require('gulp-sass'); gulp.task('css', function() { gulp.src('site/scss/style.scss') .pipe(sass()) .pipe(gulp.dest('assets/css')) }); gulp.task(
var gulp = require('gulp');
var sass = require('gulp-sass');
gulp.task('css', function() {
gulp.src('site/scss/style.scss')
.pipe(sass())
.pipe(gulp.dest('assets/css'))
});
gulp.task('watch', function() {
gulp.watch('site/scss/**/*.scss', ['css']);
});
我可以成功做到这一点:
gulp watch
gulp watch my-domain-name
var gulp = require('gulp');
var sass = require('gulp-sass');
gulp.task('css', function(name) {
gulp.src('site/scss/style.scss')
.pipe(sass())
.pipe(gulp.dest('assets/css'))
});
gulp.task('watch', function(name) {
gulp.watch('site/scss/**/*.scss', ['css', name]);
});
现在我希望能够在终端命令行中执行类似操作:
gulp watch
gulp watch my-domain-name
var gulp = require('gulp');
var sass = require('gulp-sass');
gulp.task('css', function(name) {
gulp.src('site/scss/style.scss')
.pipe(sass())
.pipe(gulp.dest('assets/css'))
});
gulp.task('watch', function(name) {
gulp.watch('site/scss/**/*.scss', ['css', name]);
});
或
我的gulpfile在我的脑海中会是这样的:
gulp watch
gulp watch my-domain-name
var gulp = require('gulp');
var sass = require('gulp-sass');
gulp.task('css', function(name) {
gulp.src('site/scss/style.scss')
.pipe(sass())
.pipe(gulp.dest('assets/css'))
});
gulp.task('watch', function(name) {
gulp.watch('site/scss/**/*.scss', ['css', name]);
});
我尝试将name
作为手表任务的变量发送。在我的情况下,它将是我的域名
或我的其他域
,这取决于我在终端中写的内容
如何将参数从终端发送到watch任务,然后再发送到css任务?有许多用于将参数从命令行传递到gulp的源。见: 官方配方使用 非常受欢迎的包装 因此,使用这些方法,您不会将命令行参数直接传递给监视任务,而是传递给任何任务都可以访问的对象
而且它看起来完全可以做您想要的事情,直接将命令行参数注入到每个任务的回调函数中。有许多用于将参数从命令行传递到gulp的源。见: 官方配方使用 非常受欢迎的包装 因此,使用这些方法,您不会将命令行参数直接传递给监视任务,而是传递给任何任务都可以访问的对象
它看起来可以完全按照您的要求执行,直接将命令行参数注入每个任务的回调函数。在windows上,我需要在终端中添加
SET NODE\u ENV=test
。然后我可以通过process.env.NODE\u env
获得它。谢谢。在windows上,我需要在终端中添加SET NODE\u ENV=test
。然后我可以通过process.env.NODE\u env
获得它。谢谢