wiredep 是一个 Gulp 插件,用于自动将 Bower 依赖项注入到 HTML 文件中。它通过扫描 bower.json 文件中的依赖关系,然后在 HTML 文件中自动添加相应的脚本或样式链接。
当使用 wiredep 时,它会自动将所有 Bower 依赖项注入到 HTML 文件中,包括 jQuery。但有时我们可能希望手动管理 jQuery 的引入(例如使用 CDN 或特定版本),这时就需要排除 jQuery 的自动注入。
const gulp = require('gulp');
const wiredep = require('wiredep').stream;
gulp.task('wiredep', function () {
gulp.src('./src/index.html')
.pipe(wiredep({
exclude: ['jquery']
}))
.pipe(gulp.dest('./dist'));
});
{
"name": "my-project",
"dependencies": {
"jquery": null
}
}
gulp.task('wiredep', function () {
gulp.src('./src/index.html')
.pipe(wiredep({
ignorePath: /jquery/
}))
.pipe(gulp.dest('./dist'));
});
const gulp = require('gulp');
const wiredep = require('wiredep').stream;
gulp.task('inject', function () {
return gulp.src('./src/index.html')
.pipe(wiredep({
exclude: ['jquery'],
fileTypes: {
html: {
block: /(([ \t]*)<!--\s*bower:*(\S*)\s*-->)(\n|\r|.)*?(<!--\s*endbower\s*-->)/gi,
detect: {
js: /<script.*src=['"]([^'"]+)/gi,
css: /<link.*href=['"]([^'"]+)/gi
},
replace: {
js: '<script src="{{filePath}}"></script>',
css: '<link rel="stylesheet" href="{{filePath}}" />'
}
}
}
}))
.pipe(gulp.dest('./src'));
});
通过以上方法,你可以有效地排除 jQuery 的自动注入,同时保留其他 Bower 依赖项的自动注入功能。
没有搜到相关的文章