我希望能够增加watch
在任务gulp
到所有的js
中的文件frontend/js
和低于任何其他js文件
gulp.watch('./frontend/js/**/*.js', ['browserify']);
Run Code Online (Sandbox Code Playgroud)
这只会将js
文件定位到一个文件夹深处
JMM*_*JMM 37
它应该匹配任意数量的子目录:
**
如果"globstar"在路径部分中是唯一的,则它匹配零个或多个目录以及搜索匹配的子目录.它不会抓取符号链接的目录.
https://github.com/isaacs/node-glob
那里有符号链接的目录吗?
我不认为你会习惯于遍历你的符号链接目录.我建议您查看node.js fs.readdir递归目录搜索,看看是否有任何解决方案可以应用于您的用例.问题或答案中没有任何内容专门针对符号链接,因此我不知道是否有适合您的解决方案.如果您可以使用其中一个解决方案获取一系列解除引用的路径名,那么您只需将数组传递给gulp.src()
.
我刚做了一些测试 - 这实际上对我来说很好.
我目前有以下结构 -
--apps
--scripts
----test.js
----test-folder
------test2.js
------test-folder-deep
--------test3.js
--myApp
----scripts-symlinked (symlinked to apps/scripts)
----gulpfile.js
Run Code Online (Sandbox Code Playgroud)
我使用以下命令设置我的symlink文件夹(在Mac上 - 来自'myApp'文件夹)
ln -s /Users/kandrews/apps/scripts ./scripts-symlinked
Run Code Online (Sandbox Code Playgroud)
在我,gulpfile.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']);
});
Run Code Online (Sandbox Code Playgroud)
完美的工作.我也在子目录中尝试过这个('scripts/symlinked-scripts')并且也是成功的.
归档时间: |
|
查看次数: |
41876 次 |
最近记录: |