我正在处理一个 Gulp 任务,该任务将从外部 API ( https://api.wordpress.org/secret-key/1.1/salt/ ) 获取结果并将其存储在一个变量中,以便在管道中进一步使用。
我试过像这样使用节点的parseurl包
const gulp = require('gulp');
const replace = require('gulp-replace');
const plumber = require('gulp-plumber');
const parseurl = require('parseurl');
gulp.task('wordpress:config', function(){
var salted_hash, url ="https://api.wordpress.org/secret-key/1.1/salt/";
return gulp.src('./src/wp-config.php')
.pipe(plumber(plumberErrorHandler))
.pipe(
function(){
salted_hash = parseurl(url);
console.log(salted_hash);
return salted_hash;
}
)
.pipe(replace('{DB_NAME}', project.db_name))
.pipe(replace('{DB_USER}', project.db_user ))
.pipe(replace('{DB_PASS}', project.db_pass ))
.pipe(replace('{DB_PREFIX}', project.theme_slug+'_' ))
.pipe(replace('{SALTED_HASH}', salted_hash ))
.pipe(gulp.dest('./'+project.wordpress ));
});
这将返回一个错误:TypeError: dest.on is not a function
。我不确定这是否完全正确,可以使用您的建议。