![](/img/trans.png)
[英]Typescript: Argument of type X is not assignable to parameter of type Y & X. Type X is not assignable to type Y
[英]Typescript - Argument of type “X” is not assignable to parameter of type “Y”
如何分配正確的類型來消除錯誤??? 我嘗試了不同的解決方案,但總是得到不同類型的錯誤。 這個是最容易理解的。
這是 Typescript 錯誤消息:
錯誤 TS2345:類型參數 '([currency, data]: [string, { available: string;}]) => void' 不可分配給類型參數 '(value: [string, {avaiable: string; }] ,索引:數字,數組:[字符串,{ 可用:字符串;}][]) => void'。 參數 '__0' 和 'value' 的類型不兼容。 鍵入'[字符串,{ 可用:字符串; }]' 不能分配給類型 '[string, { available: string; }]'。 '{avaiable: string; 類型中缺少屬性'available' }' 但在類型 '{ available: string; 中是必需的 }'。
interface Balances {
[key: string]: { avaiable: string };
}
binance.balance(async (error: any, balances: Balances) => {
Object.entries(balances).map(
([currency, data]: [string, { available: string }]) => {
console.log(data.available);
console.log(currency)
}
);
}
您可以安全地刪除map
上推斷的冗余類型。
const yourFunc = async (error: any, balances: Balances) => {
return Object.entries(balances).map(
([currency, data]) => {
console.log(data.avaiable);
console.log(currency)
}
);
}
此外,您在接口聲明中有一個avaiable
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.