吞掉承诺的决心后运行序列(gulp run sequence after promise resol

2019-09-26 07:30发布

主要任务是提供给用户可用性每次运行任务之前,把用户名和密码。 所以,我尝试使用的承诺,但在这种情况下,我的序列不`吨启动,因为在承诺解决的任务完成了。

export default function() {
    var loginPromise = new Promise((resolve, reject) => {
        inquirer.prompt(config.loginQuestions).then(answer => {
            if (!(answer.login.length && answer.password.length)) {
                reject('loginError')
            } else {
                resolve(answer)
            }
        });
    });
    return loginPromise;
};

和任务

    import login from '../util/login';
    gulp.task('sassComponents', function() {
        return login().then(function(answer) {
           console.log('started')  //This code executed and i see console
           return gulp.src(conf.sassPath)
            .pipe(sourcemaps.init())
            .pipe(sass())
            .pipe(autoprefixer(config.autoprefixer))
            .pipe(sourcemaps.write())
            .pipe(gulp.dest(function(file) { 
                 return destPath(file)   // destPath doesn`t start
             })) 
        })
    });

所以登录()是第一个函数的执行。 然后控制台出现,但destPath开始`吨。 也许你有任何想法如何解决?

文章来源: gulp run sequence after promise resolve