关于then的返回顺序
来源:2-39 Then(异步操作)

慕莱坞1886056
2020-03-06
function loadScript(src) {
return new Promise((resolve, reject) => {
let script = document.createElement(‘script’)
script.src = src
script.onload = () => {
resolve(script)
}
script.onerror = err => {
reject(err)
}
document.head.append(script)
})
}
loadScript(’./1.js’)
.then(() => {
loadScript(’./21.js’) //错误路径
return 222
}, (err) => {
console.log(err + ‘第二步的err’);
})
.then((data) => {
console.log(data, 1112);
loadScript(’./3.js’)
}, (err) => {
console.log(err + ‘第三步的err’);
})
老师为什么这样的返回顺序是
1
222
路径的错误报错
3;
而不是
1
路径的错误报错
222
3
呢
写回答
1回答
-
你这个写法是把 resolve 放在 onload 函数里,但是你没法保证 onload 的执行顺序
00
相似问题