gulp-browserify如何在同一目录中生成文件

时间:2015-03-18 08:25:53

标签: javascript gulp browserify

我有不同的文件,我想隔离浏览它们,并将每个文件的结果保留在源文件的同一文件夹中。 例如,给定以下树结构:

\subfolderOne
    fileToBeBrowserified.js
\subfolderTwo
    \subfolderTwo_one
        fileToBeBrowserified.js
    \subfolderTwo_two
        fileToBeBrowserified.js

结果应为:

\subfolderOne
    fileToBeBrowserified.js
    resultFile.js
\subfolderTwo
    \subfolderTwo_one
        fileToBeBrowserified.js
        resultFile.js
    \subfolderTwo_two
        fileToBeBrowserified.js
        resultFile.js

我已经尝试了以下代码,但是文件是在根目录上生成的,而不是在它自己的文件夹上生成。

gulp.src(testsFiles)
.pipe(browserify({
        insertGlobals: false,
        debug:true
    })
)
.pipe(rename ({extname:'.Bundle.js'}))
.pipe(gulp.dest('./'))

提前感谢任何帮助。

1 个答案:

答案 0 :(得分:0)

如果你可以告诉我们你的testsFiles变量包含什么,那将会有所帮助,因为你正在处理路径问题,而你的问题很可能就在那里。

无论如何......通常Gulp不会忘记源文件的原始路径,并在创建输出文件时考虑它们。因此,如果您告诉您的应用从./获取所有内容,则./是正确的输出目录。

您可以进一步扩展:如果您的输入目录是./app/,那么您应该将./app/作为目标目录。

例如:

gulp.task('scripts', function() { return gulp.src('./app/**/*.js') .pipe(browserify({ insertGlobals: false, debug: true })) .pipe(rename({ extname: '.bundle.js' })) .pipe(gulp.dest('./app')); });

就像你的问题的魅力。我随机猜测你的testsFiles指向与目的地不同的目录。所以他们的内容对于确定你的问题是必要的。这根本与Browserify无关。

顺便说一下:考虑放弃gulp-browserify,因为它已经blacklisted a while ago