首页 > Windows开发 > 详细

promise-api

时间:2019-02-26 00:27:28      阅读:247      评论:0      收藏:0      [点我收藏+]
var fs = require(‘fs‘)

var p1 = new Promise(function (resolve, reject) {
fs.readFile(‘./data/a.txt‘, ‘utf8‘, function (err, data) {
if (err) {
reject(err)
} else {
resolve(data)
}
})
})

var p2 = new Promise(function (resolve, reject) {
fs.readFile(‘./data/b.txt‘, ‘utf8‘, function (err, data) {
if (err) {
reject(err)
} else {
resolve(data)
}
})
})

var p3 = new Promise(function (resolve, reject) {
fs.readFile(‘./data/c.txt‘, ‘utf8‘, function (err, data) {
if (err) {
reject(err)
} else {
resolve(data)
}
})
})

p1
.then(function (data) {
console.log(data)
// 当 p1 读取成功的时候
// 当前函数中 return 的结果就可以在后面的 then 中 function 接收到
// 当你 return 123 后面就接收到 123
// return ‘hello‘ 后面就接收到 ‘hello‘
// 没有 return 后面收到的就是 undefined
// 上面那些 return 的数据没什么卵用
// 真正有用的是:我们可以 return 一个 Promise 对象
// 当 return 一个 Promise 对象的时候,后续的 then 中的 方法的第一个参数会作为 p2 的 resolve
//
return p2
}, function (err) {
console.log(‘读取文件失败了‘, err)
})
.then(function (data) {
console.log(data)
return p3
})
.then(function (data) {
console.log(data)
console.log(‘end‘)
})

promise-api

原文:https://www.cnblogs.com/lujieting/p/10434697.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!