Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/476.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 具有相同源文件的Gulp.series不工作(未等待异步任务)_Javascript_Gulp_Gulp 4_Plop - Fatal编程技术网

Javascript 具有相同源文件的Gulp.series不工作(未等待异步任务)

Javascript 具有相同源文件的Gulp.series不工作(未等待异步任务),javascript,gulp,gulp-4,plop,Javascript,Gulp,Gulp 4,Plop,我有一些吞咽任务,用于修改某个文件。 如果我自己运行任务,它们就可以正常工作 现在,我有了一个包装任务,在这里我会提示用户要执行哪些任务,然后我会使用gulp.series() 它们都可以工作,但是对于那些需要修改相同源文件的任务,它将只应用第一次修改。 似乎这些任务并没有真正按顺序执行,允许完成第一个更改,然后传递给第二个 下面是一些代码: const gulp=require('gulp')) 常量字符串={ polyfill:`polyfill字符串,它被添加到文件`,//我简化了这个字符

我有一些吞咽任务,用于修改某个文件。 如果我自己运行任务,它们就可以正常工作

现在,我有了一个包装任务,在这里我会提示用户要执行哪些任务,然后我会使用
gulp.series()

它们都可以工作,但是对于那些需要修改相同源文件的任务,它将只应用第一次修改。 似乎这些任务并没有真正按顺序执行,允许完成第一个更改,然后传递给第二个

下面是一些代码:

const gulp=require('gulp'))
常量字符串={
polyfill:`polyfill字符串,它被添加到文件`,//我简化了这个字符串
modernizr:`{src:'/js/modernizr custom.js',异步:true,延迟:true}`
}
/*
*用字符串替换特定注释
*使用plop修改操作
*/
函数replaceComment(路径、模板、模式){

log(`好的,我发现了问题所在。事实上,这是一种承诺。 函数
replacecoment()
已启动,但在
replacecoment()
完成之前调用了
done()
。因此,我必须等待
replacecoment()
返回一个承诺,该承诺仅在修改完成时才会解决:

函数替换注释(路径、模板、模式){
返回新承诺((解决、拒绝)=>{
console.log(`