我有以下代码:
import {initConnection,IapIosSk2, setup} from "react-native-iap"
async nativeTest() : Promise<ProductStatus[]>{
try {
let stat: Promise<ProductStatus[]> = await (IapIosSk2).subscriptionStatus('sku')
setup({storekitMode:'STOREKIT2_MODE'})
initConnection()
return await new Promise((resolve, reject) => {
if (stat) {
for (let data in stat){
console.log(data)
}
resolve(stat);
} else {
reject(new Error('Failed'));
}
});
}
catch(e){
console.log(e)
}
}我正在使用react本机-IAP库,并在"stat“变量下获得以下错误:
Type 'ProductStatus[]' is missing the following properties from type 'Promise<ProductStatus[]>': then, catch, finally, [Symbol.toStringTag]我假设这是我如何处理承诺的一个错误?任何决议都会很好,谢谢。
发布于 2022-11-28 18:02:59
let stat: Promise = await (IapIosSk2).subscriptionStatus('sku')
await的全部要点是让包含的函数处于休眠状态,直到承诺被解析,然后计算为承诺的解析值。
如果你想要一个承诺,不要使用await。(不要这样做,那行之后的代码假设你没有承诺)。
如果您使用await,那么您可能需要的是ProductStatus[]而不是Promise<ProductStatus[]>。
发布于 2022-11-28 18:04:53
在这里,变量类型将不是Promise
https://stackoverflow.com/questions/74604701
复制相似问题