Promise用法
如果你没有使用 async
和 await
,但仍然需要处理异步操作,你可以使用 Promise
对象。Promise
对象代表了一个可能现在、将来或永远不可用的值。
function fetchDataWithPromise() { return new Promise((resolve, reject) => { uni.request({ url: 'https://api.example.com/data', method: 'GET', success: (response) => { if (response.data.success) { resolve(response.data.data); } else { reject(new Error('Failed to fetch data')); } }, fail: (error) => { reject(error); } }); }); }
在这个例子中,fetchDataWithPromise
函数返回一个 Promise
对象。在 Promise
的执行器中,我们调用 uni.request
,并在成功时调用 resolve
,在失败时调用 reject
。然后,你可以在其他地方使用 .then()
和 .catch()
方法来处理这个 Promise
。
fetchDataWithPromise() .then(data => { console.log('Data fetched:', data); }) .catch(error => { console.error('Error fetching data:', error); });