new Promise(
function (resolve, reject) {
// 一段耗时的异步操作
resolve('成功') // 数据处理完成
// reject('失败') // 数据处理出错
}
).then(
(res) => {console.log(res)}, // 成功
(err) => {console.log(err)} // 失败
)
当promise状态发生改变,不会再变;会触发then()里的响应函数处理后续步骤。
new Promise(resolve => {
setTimeout(() => {
resolve('成功')
}, 2000)
}).then(res => {
console.log(res) //成功
})
new Promise((resolve, reject) => {
resolve('成功')
}).then(resolve => {
console.log(resolve)//成功
}, reject => {
console.log(reject)
})
new Promise((resolve, reject) => {
reject('失败')
}).then(resolve => {
console.log(resolve)
}, reject => {
console.log(reject)//失败
})
new Promise((resolve, reject) => {
resolve('成功')
}).then(resolve => {
console.log(resolve)
return new Promise(resolve => {
resolve("成功2")
})
}, reject => {
console.log(reject)//失败
return '失败'
}).then(val => {
console.log(val)//成功2
})