[英]How to assign typescript types to this type of array of object
[英]How to assign a type to an object in TypeScript based on switch case
我正在用TypeScript構建一個React Native應用程序。
我正在用這樣的開關盒編寫處理程序:
export const handleMessageData = (dispatch: Dispatch, messageData: FCMMessage): void => {
const { type, message_data } = messageData;
const data = camelizeKeys(JSON.parse(message_data));
switch (type) {
case conditionOne:
data.consumer = data.consumer.uuid;
setHouses({ entities: { houses: { [data.uuid]: data } } });
// ... more cases
default:
// ... do stuff
}
};
在每種情況下,我都知道data
是哪種類型。 我該如何告訴打字稿呢?
偽代碼:
case conditionOne:
data: MyType;
data.consumer = data.consumer.uuid;
switch
周圍的更多代碼將很有幫助(例如, type
和data
來自何處以及它們看起來如何?)。 通常,您可以使用標記的聯合,對象類型,記錄類型或多種其他方式來聲明兩種類型之間的關系。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.