簡體   English   中英

為什么typescript在object找不到屬性?

[英]Why is typescript unable to find a property in the object?

我在我的項目中使用 typescript。 我正在實施條帶訂閱。

這是我的代碼:

let subscription = event.data.object;
console.log("user subscription:  " + JSON.stringify(subscription));

subscriptions顯示類型Stripe.Event.Data.Object

這是控制台結果:

user subscription:{ ........... , expires_at:"16244565", .........}

現在我嘗試從subscription中提取expires_at的值。

這是代碼:

let subscription = event.data.object;
console.log("user subscription:  " + JSON.stringify(subscription)); 
console.log("due date:  " + subscription.expires_at);

現在我看到.expires_at下方出現一條彎曲的紅線,並表示Property 'expires_at' does not exist on type 'Object' 但是當我控制subscription時,我可以看到一個字段expires_at

請指導我如何解決這個問題。

首先,如果您使用的是 TypeScript,您應該為您的值創建類型。 我認為它們可以在 Stripe API 文檔https://stripe.com/docs/api/subscriptions中找到。

type SubscriptionResponseParams = {
...
expires_at: string;
}

let subscription: SubscriptionParams = ...

它可能會產生另一個錯誤,如果是這樣,您必須 map 該事件到您的訂閱響應。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM