如何用箭頭函式撰寫這個通用函式?
function simpleState<T>(initial: T): [() => T, (v: T) => void] {
let value: T = initial;
return [
() => value,
(v: T) => {
value = v;
}
]
};
uj5u.com熱心網友回復:
const simpleState = <T>(initial: T): [() => T, (v: T) => void] => {
// same function body as before
}
由于您標記了 react-native,請注意在.tsx檔案中,這可能不起作用,因為<T>它將被決議為 JSX 標記。您可以將其放入.ts檔案中,然后將其匯入.tsx檔案中,或者使用以下解決方法之一使其不被解釋為 JSX 元素。
尾隨逗號:
<T,>(initial: T): // etc
從未知擴展:
<T extends unknown>(initial: T): // etc
uj5u.com熱心網友回復:
const simpleState2 = <T>(initial: T): [() => T, (v: T) => void] => {
let value: T = initial;
return [
() => value,
(v: T) => {
value = v;
},
];
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/qianduan/433652.html
標籤:javascript 打字稿 反应式
上一篇:反應本機狀態已更新,但功能仍使用安裝時設定的初始狀態
下一篇:如何正確發送帶導航的引數?
