// 情况1
Page({
async onLoad() {
console.log(1)
require.async('../xxx').then(async (pkg) => {
console.log(2)
})
console.log(3)
}
})
// 打印顺序 1 2 3
// 情况2
Page({
async onLoad() {
console.log(1)
require('../xxx', async (pkg) => {
console.log(2);
}, ({ errMsg, mod }) => {
console.error(`path: ${mod}, ${errMsg}`)
})
console.log(3)
}
})
// 打印顺序 1 2 3
如上图所示:
官方文档上写的分布异步化的两种加载策略,如果下载包是异步的,那么打印顺序是否应该是1 3 2
目前测试结果看,2种方式的回调都是在console.log(3) 之前执行,且1 和 3中间时间差有几百毫秒的差值,即阻塞了代码执行。请问这种属于正常情况吗?
没有复现你这个情况。不管记载同步还是异步模块,都会是3比2先执行的