常见的gulp异步操作
const fs = require('fs')
exports.callback = done => {
console.log('callback task~')
done()
}
exports.callback_error = done => {
console.log('callback task~')
done(new Error('task failed!'))
}
exports.promise = () => {
console.log('promise task~')
return Promise.resolve()
}
exports.promise_error = () => {
console.log('promise task~')
return Promise.reject(new Error('task failde~'))
}
const timeout = time => {
return new Promise( resolve => {
setTimeout(resolve, time)
})
}
exports.async = async () => {
await timeout(1000)
console.log('async task~')
}
exports.stream = () => {
const readStream = fs.createReadStream('package.json')
const writeStream = fs.createWriteStream('temp.text')
readStream.pipe(writeStream)
return readStream
}