Я загружаю прокси-сервер синхронизации браузера и хочу загрузить условия поиска и замены из внешнего файла, чтобы изменить страницу по мере ее загрузки в браузер.
Причина, по которой я хочу загрузить условия поиска и замены из отдельного файла, заключается в том, что я хочу использовать gulp-watch и перезагружать синхронизацию браузера по мере обновления условий поиска и замены.
Папка моего проекта:
- regex/search.txt ‹- поисковый запрос хранится в этом файле
- regex/replace.txt ‹- термин замены хранится в этом файле
- gulpfile.js
Содержимое gulpfile.js:
var gulp = require('gulp'),
fs = require("fs"),
browserSync = require('browser-sync');
var proj_url = "http://www.example.com";
var search_text = "";
var replace_text = "";
gulp.task('readRegEx', function() {
return gulp.src('regex/*.txt')
.pipe(fs.readFile("regex/search.txt", "utf-8", function(err, data) {
search_text = data;
}))
.pipe(fs.readFile("regex/replace.txt", "utf-8", function(err, data) {
replace_text = data;
}))
});
gulp.task('browser-sync', function() {
browserSync({
proxy: {
target: proj_url
},
rewriteRules: [
{
match: search_text,
fn: function (match) {
return replace_text;
}
}
]
});
});
gulp.task('default', ['readRegEx','browser-sync'], function() {
gulp.watch(['regex/*.txt'], [browserSync.reload]);
});
Это не работает. Я получаю следующую ошибку:
TypeError: Cannot call method 'on' of undefined ...