在微信小程序中,判断页面或资源是否加载完成的方法如下:
使用 `wx.ready` 事件
当小程序的页面或组件加载完成时,会触发 `wx.ready` 事件。你可以在 `wx.ready` 事件中执行相关代码,以确保页面或组件已经加载完成后再进行操作。
示例代码:
```javascript
Page({
onLoad: function () {
// 页面加载时执行的代码
},
onReady: function () {
// 页面加载完成后执行的代码
console.log('页面加载完成');
}
});
```
使用 `wx.error` 事件
如果页面或组件加载失败,会触发 `wx.error` 事件。你可以通过监听这个事件来处理加载失败的情况。
示例代码:
```javascript
Page({
onLoad: function () {
// 页面加载时执行的代码
},
onReady: function () {
// 页面加载完成后执行的代码
console.log('页面加载完成');
},
onError: function (error) {
// 页面加载失败时执行的代码
console.error('页面加载失败', error);
}
});
```
使用 `wx.getImageInfo`
如果你需要判断图片是否加载完成,可以使用 `wx.getImageInfo` 方法。该方法会返回一个 Promise,当图片加载完成后,Promise 会 resolve,否则会 reject。
示例代码:
```javascript
function getImg(imgArr) {
return new Promise((resolve, reject) => {
wx.getImageInfo({
src: imgArr,
success: function (res) {
resolve(imgArr);
},
fail: function (err) {
reject(new Error('图片加载失败'));
}
});
});
}
// 使用示例
getImg(['img1.jpg', 'img2.jpg']).then(() => {
console.log('所有图片加载完成');
}).catch((e) => {
console.error('图片加载失败', e);
});
```
通过以上方法,你可以有效地判断小程序中的页面或资源是否加载完成,并进行相应的处理。