javascript - 类型注解只能在 TypeScript 文件中使用。ts(8010)
问题描述
我正在关注有关为反应原生应用程序设置 IAP(应用内购买)的教程(链接到下面的教程)。在编写代码时,vs 代码警告我“类型注释只能在 TypeScript 文件中使用”,这在代码的“购买:InAppPurchase | SubscriptionPurchase”和“错误:PurchaseError”部分发出警告。在研究这个时,我能找到的最流行的解决方案(在 Stack Overflow 或 elswhere 上)是简单地禁用“TypeScript 和 JavaScript 语言功能”。
我觉得这不能解决问题,但我不确定。禁用它会解决问题并让我的应用程序按预期运行吗?还是有另一种方法可以在我的 javascript 文件中包含这种打字稿语法?
useEffect(() => {
purchaseUpdateSubscription = RNIap.purchaseUpdatedListener(
async (purchase: InAppPurchase | SubscriptionPurchase) => {
const receipt = purchase.transactionReceipt;
if (receipt) {
try {
if (Platform.os === 'ios') {
RNIap.finishTransactionIOS(purchase.transactionReceipt)
}
await RNIap.finishTransaction(purchase)
await processNewPurchase(purchase)
} catch (ackErr) {
console.log('ackErr', ackErr)
}
}
}
);
purchaseErrorSubscription = RNIap.purchaseErrorListener(
(error: PurchaseError) => {
console.log('purchaseErrorListener', error)
}
);
return (() => {
if (purchaseUpdateSubscription) {
purchaseUpdateSubscription.remove()
purchaseUpdateSubscription = null;
}
if (purchaseErrorSubscription) {
purchaseErrorSubscription.remove()
purchaseUpdateSubscription = null;
}
})
}, [])
教程链接:https ://medium.com/@rossbulat/react-native-subscriptions-with-in-app-purchases-setup-fdaf3863e07f
解决方案
如果您仍然在编译代码,您可以将文件更改为 .ts 文件并在任何地方放置类型注释(any
如果您不知道或不想创建类型)。
推荐阅读
- javascript - 如何使用for循环从选择选项框中获取值[选择选项框是动态创建的]
- maven - 包含依赖的 Maven 模块时,AWS SAM 构建失败的 Lambda Java8
- android - 如何从 android 的 android webview 下载 Tik Tok 视频?
- c# - 基于 Windows 10 构建的 C# Winforms App 在 Windows 7 上抱怨 dll
- javascript - 如何在 html 和 css 中的聊天机器人响应中进行动态间距
- javascript - 当函数在数据库中插入数据时,如何在 Ajax 函数中进行进度加载?
- numpy - 我可以从 numpy 数组的布尔选择中创建视图吗?
- javascript - 如何在Javascript中将String更改为Int
- discord.js - 如何修复用户不工作的覆盖权限
- javascript - 处理发布请求参数后,如何确保 django 在新选项卡中提供模板?