我有一些脚本标记
<script type="text/javascript" src="bower_components/angular/angular.min.js" cdn="https://ajax.googleapis.com/ajax/libs/angularjs/1.5.8/angular.min.js"></script>
<script type="text/javascript" src="bower_components/angular-messages/angular-messages.min.js" cdn="https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.5.8/angular-messages.min.js"></script>
我想改成
<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/angularjs/1.5.8/angular.min.js"></script>
<script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.5.8/angular-messages.min.js"></script>
我已尝试过cdnify,但我们必须在gulp本身编写所有代码。 我希望从HTML文件本身获得更多控制权,因此如果我使用不同的cdn网址,则很容易控制。
答案 0 :(得分:2)
您可以利用gulp-replace
更改html文件,并使用正则表达式/src="(.+?)"\scdn="(.+?)"/gmi
这应该有效:
var replace = require('gulp-replace');
gulp.task('replace-cdn', function(){
gulp.src(['index.html'])
.pipe(replace(/src="(.+?)"\scdn="(.+?)"/gmi, 'src="$2"'))
.pipe(gulp.dest('build '));
});