[英]How to conditionally set a function argument type in typescript?
[英]How to add typescript type to an array into function argument?
我在定義數組類型時遇到問題:下面的代碼完美運行:
const messageCustomStyles: Array<keyof IAlertMessage> = [
'font',
'margin',
'padding'
];
return getCustomStylesFrom(styles, 'message', messageCustomStyles);
我想要做的是將此數組移動到具有其類型的 function 參數中,如下所示:
return getCustomStylesFrom(
styles,
'message',
['font', 'margin', 'padding']: Array<keyof IAlertMessage>);
但這會引發 ts 錯誤,提示“預期 3 arguments,但得到 4。” 看起來像在':'之后它正在將類型計數為新參數。
我怎樣才能解決這個問題?
你可以這樣做:
return getCustomStylesFrom(
styles,
'message',
['font', 'margin', 'padding'] as Array<keyof IAlertMessage>);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.