微信小程序 异步初始化
微信小程序异步初始化是指在小程序启动时,进行一些耗时操作时采用异步方式,避免阻塞主线程,提高小程序的启动速度和用户体验。
具体实现方法:
-
在app.js中定义一个异步方法,比如init()。
-
在onLaunch生命周期函数中调用init()方法,并使用Promise对象返回一个异步操作。
-
在异步操作完成后,使用resolve()方法将结果返回给调用方。
-
在需要使用异步初始化结果的页面或组件中,使用wx.showLoading()方法显示加载提示框,然后调用init()方法并使用await等待异步结果。
-
在异步结果返回后,使用wx.hideLoading()方法隐藏加载提示框,然后进行后续操作。
示例代码:
在app.js中定义异步方法init():
App({
init: function() {
return new Promise((resolve, reject) => {
// 异步操作
// ...
// 异步操作完成后返回结果
resolve(result);
});
},
onLaunch: function() {
this.init().then(result => {
console.log(result);
});
}
});
在需要使用异步初始化结果的页面或组件中使用await等待异步结果:
Page({
onLoad: async function(options) {
wx.showLoading({
title: '加载中',
});
const result = await getApp().init();
wx.hideLoading();
console.log(result);
}
});
``
原文地址: https://www.cveoy.top/t/topic/cH7r 著作权归作者所有。请勿转载和采集!