数组路径不适用于 gulp.task
Array path not working with gulp.task
我有一个 gulp 任务,它在更改时连接和丑化 js 文件。如果我只使用一个来源,它就可以工作。然而,我正在学习 angular,并希望它首先连接模块,与此类似:
https://medium.com/@dickeyxxx/best-practices-for-building-angular-js-apps-266c1a4a6917#.mujtfmj63
我正在使用:
gulp.task('scripts', function(){
return gulp.src(path.gulp.paths.src + ['/**/module.js', '/**/*.js'])
.pipe(concat('all.min.js'))
.pipe(uglify())
.pipe(gulp.dest(path.gulp.paths.dist));
});
和 gulp 任务运行但它不会创建 all.min.js 文件。如果我删除数组并只使用它,它会起作用:
gulp.task('scripts', function(){
return gulp.src(path.gulp.paths.src + '/**/*.js')
.pipe(concat('all.min.js'))
.pipe(uglify())
.pipe(gulp.dest(path.gulp.paths.dist));
});
我的目录设置为
public
|
+-- modules
| |
| +-- module.js
+-- test.js
我做错了什么?
您正在尝试将 path.gulp.paths.src
(我假设是一个字符串)添加到一个数组中。对于此操作,JavaScript 首先将数组转换为字符串(参见 )。假设您的字符串是 './public'
,您最终传递给 gulp.src
的是 './public/**/module.js,/**/*.js'
,这不是有效路径。
您可以将字符串添加到数组的每个元素前 ([path.gulp.paths.src + '/**/module.js', path.gulp.paths.src + '/**/*.js']
),或者您可以使用 cwd
option 将其设置为所有文件的基础:
return gulp.src(['/**/module.js', '/**/*.js'], {cwd: path.gulp.paths.src})
...
我有一个 gulp 任务,它在更改时连接和丑化 js 文件。如果我只使用一个来源,它就可以工作。然而,我正在学习 angular,并希望它首先连接模块,与此类似:
https://medium.com/@dickeyxxx/best-practices-for-building-angular-js-apps-266c1a4a6917#.mujtfmj63
我正在使用:
gulp.task('scripts', function(){
return gulp.src(path.gulp.paths.src + ['/**/module.js', '/**/*.js'])
.pipe(concat('all.min.js'))
.pipe(uglify())
.pipe(gulp.dest(path.gulp.paths.dist));
});
和 gulp 任务运行但它不会创建 all.min.js 文件。如果我删除数组并只使用它,它会起作用:
gulp.task('scripts', function(){
return gulp.src(path.gulp.paths.src + '/**/*.js')
.pipe(concat('all.min.js'))
.pipe(uglify())
.pipe(gulp.dest(path.gulp.paths.dist));
});
我的目录设置为
public
|
+-- modules
| |
| +-- module.js
+-- test.js
我做错了什么?
您正在尝试将 path.gulp.paths.src
(我假设是一个字符串)添加到一个数组中。对于此操作,JavaScript 首先将数组转换为字符串(参见 )。假设您的字符串是 './public'
,您最终传递给 gulp.src
的是 './public/**/module.js,/**/*.js'
,这不是有效路径。
您可以将字符串添加到数组的每个元素前 ([path.gulp.paths.src + '/**/module.js', path.gulp.paths.src + '/**/*.js']
),或者您可以使用 cwd
option 将其设置为所有文件的基础:
return gulp.src(['/**/module.js', '/**/*.js'], {cwd: path.gulp.paths.src})
...