1

Gulp を使用して index.html の CSS ファイルのパスを置き換えようとしています。問題は、テーマ名が異なる複数のプロジェクトがあり、配布パッケージでソース ファイルのパスが異なることです。

index.html

<link href="app/style/themes/dark/theme.css" id="hmi-theme" rel="stylesheet" />

私の配布パッケージでは、テーマはsrc\projects\project\app\style\themesのような場所にコピーされます

dist/index.html

<link href="[set the path here/]app/style/themes/dark/theme.css" id="hmi-theme" rel="stylesheet" />

これは、gulp-find を使用して index.html で URL を検索する試みです。

var gulp = require('gulp');
var find = require('gulp-find');
var replace = require('gulp-replace');

gulp.task('templates', function(){
    gulp.src(['index.html'])
        .pipe(find(/app\/style\/themes\/([^"]*)/g))
        .pipe(gulp.dest('file.txt'));

それは機能します。宛先ファイルに値があります。しかし、この値を gulp-replace で使用して HTML ファイルの値を変更することは可能ですか?

私も次のようなことを試しました:

.pipe(replace(/app\/style\/themes\/([^"]*)/g, "dist/" + find(/app\/style\/themes\/([^"]*)/g)))

しかし、index.html の値は次のとおりです。

dist/[object Object]
4

1 に答える 1