[英]How to change a href link with gulp
我正在用 gulp 創建一個需要更改 href 參數的任務。 例如:
在我的 html 文件中,我有一個鏈接:
<a href="myfolder">Click here</a>
因此,“myfolder”是可變的,指的是 index.html 所在文件夾的名稱。 當我將文件推送到服務器上時,頁面不顯示,因為它不是針對 index.html 文件,而只是文件夾的名稱。
我通過以下方式使用 gulp-replace 來完成任務:
var gulp = require('gulp'); var replace = require('gulp-replace'); gulp.task('templates', function(){ gulp.src(['index.html']) .pipe(replace('<a href="*/" >', '<a href="*/index.html >"')) .pipe(gulp.dest('build/')); });
由於文件夾名稱 (myfolder) 是可變的,因為每次我處理項目時,我都必須創建一個新文件夾,最后 index.html 文件不能只包含特定名稱。
所以,這個方法行不通。
任何幫助將不勝感激。
親切的問候,
費爾南多
您需要在replace
調用中定義一個正則表達式並匹配href
中的部分:
replace(/<a href="(.*)"/g, '<a href="$1/index.html"')
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.