微信小程序 wx.nextTick API 用法简介 及 与 setTimeout 的区别

10月/20日/小程序/浏览 1161

微信小程序提供了一个API wx.nextTick 。这个API的作用就是把一些操作延迟到下一个时间片再执行。


诚如微信小程序文档中所说,类似于 setTimeout。但是,如果和setTimeout完全一样,这个API就完全没必要了。


和setTimeout不同,setTimeout 是指定了一个延迟时间,而wx.nextTick 是保住在 “下一个时间片” 执行。


一个典型的场景,更新界面 setData 后,需要紧接着操作界面,“操作界面”这个动作显然必须在“界面”更新完成后,再执行。如果,使用 setTimeout 只能延迟一个估计的时间,短了会有bug,长了效果会打折扣。这时候,使用 wx.nextTick 就比较好了,能确保界面更新后,“立刻”执行“操作界面”的动作。


一个简单的示例:


console.log(1);

wx.nextTick(() => {
	console.log(2);
})

console.log(3);


输入结果是: 1 3 2

发表评论

暂无评论,抢个沙发...

客服 工单