2015-08-02 24 views
9

Tôi đang cố tạo chỉ mục của tất cả các tệp (đường dẫn) trong một thư mục nhất định. Cho đến nay tôi đã làm việc với gulp.src(filePath) để đạt được điều đó. Theo điều này blog post, nó sẽ hoạt động:Liệt kê tất cả các tệp trong mảng với gulp.src()

gulp.src (tệp) là một chuỗi hoặc mảng chứa (các) đường dẫn tệp/tệp.

mã hiện tại của tôi:

gulp.task("createFileIndex", function(){ 
    var index = gulp.src(['./content/**/*.*']); 
    console.log("INDEX:", index[0]); 
}); 

By outputing các giá trị trả về gulp.src() với index[0] tôi nhận được undefined và cả index đầu ra chỉ một cuốn từ điển lớn mà không cần bất kỳ filepaths.

Trả lời

2

Theo tài liệu ngụm trên gulp.src (https://github.com/gulpjs/gulp/blob/master/docs/API.md#gulpsrcglobs-options)

gulp.src (globs [, tùy chọn])

phát ra file phù hợp với glob cung cấp hoặc một mảng của những đống . Trả lại luồng các tệp Vinyl có thể được thêm vào đường ống để bổ sung.

gulp.src('client/templates/*.jade') 
    .pipe(jade()) 
    .pipe(minify()) 
    .pipe(gulp.dest('build/minified_templates')); 

glob đề cập đến cú pháp nút-glob hoặc có thể là đường dẫn tệp trực tiếp.

globs

Loại: String hoặc mảng

Glob hoặc mảng của những đống để đọc.

tùy chọn

Loại: Object

Tùy chọn để vượt qua nút-glob qua glob dòng.

ngụm cho biết thêm một số tùy chọn bổ sung thêm vào các tùy chọn hỗ trợ bằng nút-glob và glob dòng

Vì vậy, có vẻ như bạn cần phải xem xét trong hơn nữa về vấn đề này. Nếu không điều này có thể hữu ích Get the current file name in gulp.src()

+3

Tôi đã tạo một giải pháp thay thế với thư viện 'js' nội bộ của nodejs. 'fs.readdirSync()' liệt kê tất cả các tệp của một thư mục được xác định. – user3147268

5

Như OP đã nói trong một chú thích, một giải pháp đơn giản cho vấn đề này sẽ được sử dụng fs.readdirSync thay vì gulp.src:

fs = require("fs"); 
fs.readdirSync(directoryPath); // ["file1", "file2"] 
2

Giải pháp hiện nay là:

var gulp = require('gulp'); 
var debug = require('gulp-debug'); 

gulp.src(sources) 
    .pipe(debug()); 
Các vấn đề liên quan