如何理解这句话:Are your tasks running before the dependencies are complete? Make sure your dependency tasks are correctly using the async run hints: take in a callback or return a promise or event stream.
gulpjs中文网的翻译:你的任务是否在这些前置依赖的任务完成之前运行了?请一定要确保你所依赖的任务列表中的任务都使用了正确的异步执行方式:使用一个 callback,或者返回一个 promise 或 stream。
我有些摸不着头脑。如果没有使用callback或者返回promise/stream,那这个任务就不是异步任务了?
还有gulp.task('mytask',['beforemytask']),表示beforemytask执行完了再去执行mytask,有点同步的味道,但是beforemytask需要使用正确的异步方式?
懵B,求大神解惑
是的。gulp 任务序列执行依赖 Orchestrator,会对函数有无参数(callback)和返回值(promise/stream)做判断,从而决定是不是异步。
需要检测 beforemytask 结束,确保 mytask 在后面执行就用上面的方式,否则任何方式都可以。
必须按照依赖关系处理,这里用同步去理解,我觉得没有问题,这是我的一点理解,仅供参考
下面举个例子