Javascript Gulp-以文件夹及其子文件夹中的所有文件为目标
我希望能够将Javascript Gulp-以文件夹及其子文件夹中的所有文件为目标,javascript,gulp,Javascript,Gulp,我希望能够将gulp中的watch任务添加到frontend/js中的所有js文件和下面的任何其他js文件中 gulp.watch('./frontend/js/**/*.js', ['browserify']); 这将只针对一个文件夹深度的js文件,它应该匹配任意数量的子目录: **如果“globstar”在路径部分中是单独的,那么它将匹配零个或多个搜索匹配项的目录和子目录。它不爬网符号链接的目录 你有符号链接的目录吗 符号链接 我认为你不会让gulp以本机方式遍历你的符号链接目录。我建
gulp
中的watch
任务添加到frontend/js
中的所有js
文件和下面的任何其他js文件中
gulp.watch('./frontend/js/**/*.js', ['browserify']);
这将只针对一个文件夹深度的
js
文件,它应该匹配任意数量的子目录:
**
如果“globstar”在路径部分中是单独的,那么它将匹配零个或多个搜索匹配项的目录和子目录。它不爬网符号链接的目录
你有符号链接的目录吗
符号链接
我认为你不会让gulp以本机方式遍历你的符号链接目录。我建议您看看这些解决方案是否可以应用到您的用例中。问题或答案中没有专门针对符号链接的内容,因此我不知道是否有适合您的解决方案。如果您可以使用其中一种解决方案获得一个解引用路径名数组,那么您只需将该数组传递到
gulp.src()
我刚刚做了一些测试,这实际上对我来说很好
我目前的结构如下:
--apps
--scripts
----test.js
----test-folder
------test2.js
------test-folder-deep
--------test3.js
--myApp
----scripts-symlinked (symlinked to apps/scripts)
----gulpfile.js
我使用以下方法设置我的符号链接文件夹(在Mac上-从“myApp”文件夹):
在mygulpfile.js
中,我有以下内容:
var gulp = require('gulp'),
jshint = require('gulp-jshint');
gulp.task('jshint', function () {
gulp.src('./scripts-symlinked/**/*.js')
.pipe(jshint())
.pipe(jshint.reporter('default'));
});
gulp.task('watch', function () {
gulp.watch('./scripts-symlinked/**/*.js', ['jshint']);
});
工作完美。我也在一个子目录(“脚本/symlinked脚本”)中尝试了这一点,并且也取得了成功。我认为这不值得这么做:
gulp.watch('./frontend/js/', ['browserify']);
事实上,我确实有一些小链接。好戏chap@KellyJAndrews除此之外,我还无法将所有文件及其子文件夹中的文件作为目标:)因此,对我而言,没有任何问题得到回答。您的所有子文件夹是否都已符号链接?整个js文件夹是;)@Jamie Hutber查看更新答案的符号链接部分。可能我误解了@Jamie Hutber的文件夹结构。我认为
js
文件夹的内容是符号链接,而不是js
本身。但如果是这样的话,那么根据你的结果,我不知道为什么他们最初的glob不起作用。
gulp.watch('./frontend/js/', ['browserify']);