Gulp -管理库的依赖关系

Gulp - Managing library dependencies

本文关键字:依赖 关系 管理 Gulp      更新时间:2023-09-26

我正在做一个项目,我有一个vendor目录包含相当多的库,然后在app/js目录中的所有应用程序特定源。我想使用gulp将维护依赖关系的所有内容最小化到单个文件中。我找不到合适的方法来做这件事。

示例- jQuery UI和Bootstrap都需要先加载jQuery。我如何在我的gulp任务中指定它?

我知道的一种方法是传递gulp.src()方法的路径数组,它将以特定的顺序发出文件,但这对我来说似乎非常不自然。

var paths = ['vendor/jquery.min.js', 'vendor/jquery-ui.min.js', 'vendor/bootstrap.min.js']
gulp.task('scripts', function(){
    gulp.src(paths)
        .pipe(concat('all.min.js'))
        ...
        ...
        .pipe(gulp.dest('build/js/all.min.js'))
})

对于大量库,以这种方式包含特定文件的路径并将其传递给.src()方法似乎是不正确的。我怎样才能更好地管理它?bower可以在某些方面使用吗?

就像你说的,最简单的方法是将它们添加到数组和gulp.src

gulp.src([
    'public/assets/vendor/jquery/dist/jquery.js',
    'public/assets/vendor/bootstrap/dist/js/bootstrap.js',
    'public/assets/js/my_scripts.js'
    ])

所以你可以添加你想要包含的新js文件的路径。

另一种可能是https://github.com/austinpray/asset-builder

下面是一个带有资产生成器的gulpfile示例https://github.com/roots/sage/blob/master/gulpfile.js

另一种可能是自动捆绑来自底层文件的文件。https://truongtx.me/2014/07/18/using-bower-with-gulp/