收藏
回答

一定是onLond执行完才执行onShow吗?

由于传输数据过大,产品栏的信息很多,要全部加载完之后才能在页面显示,于是同事教我这么写:

let index = 0;
let resultArray=[];
while (index < 5) {
    let prodListData = await request("/product/getProductList", { idx: index++ });
    let prodListItem = {name:prodListData.prodlist.name,tracks:prodListData.prodlist.tracks.slice(0,7)}
    resultArray.push(prodListItem);
    this.setData({
        prodList:resultArray
    });
}

这段代码是在onLoad()里面写的,实际证明确实有效,但是如果按官网给的图,onShow在onLoad之后才执行,那按理来说,这种多次赋值的效果理应和写在while循环体外面是一样的。

回答关注问题邀请回答
收藏

1 个回答

登录 后发表内容
问题标签