我正在编写一个 gulp 任务来替换开发中使用的库的本地链接,以替换为公共 CDN 链接。这是我的 index.html 文件的一部分。
<script src="../bower_components/jquery/dist/jquery.js"></script>
<script src="../bower_components/angular/angular.js"></script>
我正在编写的 Gulp 任务正在使用gulp-cdnizer
gulp.task('cdn', function () {
return gulp.src('.tmp/serve/index.html')
.pipe(cdnizer([
'google:angular',
'cdnjs:jquery'
]))
.pipe(gulp.dest('dist'));
});
它应该生成以下输出
<script src="//cdnjs.cloudflare.com/ajax/libs/jquery/3.1.0/jquery.min.js"></script><script>if(!(window.jQuery)) cdnizerLoad("bower_components/jquery/dist/jquery.js");</script>
<script src="//cdnjs.cloudflare.com/ajax/libs/angular.js/1.5.8/angular.min.js"></script><script>if(!(window.angular)) cdnizerLoad("bower_components/angular/angular.js");</script>
但只有当我从输入 HTML 文件中添加的链接中删除前导 '../' 时它才有效
<script src="bower_components/jquery/dist/jquery.js"></script>
<script src="bower_components/angular/angular.js"></script>
我需要在 gulp cdn 任务中进行哪些更改才能使用以前的 HTML 输入实现所需的结果。
编辑
文件夹结构是这样的。