函數參數使用接口
老師,
interface Info {name:str,age:number}
function fn (row:Info):void {}
一個表格,有20列,當點擊某一行時,需要把20列的信息作為詳情展示出來,
當row參數使用接口時,是不是Info接口需要把這20個字段都要聲明下,感覺好麻煩。
還是直接把row的類型指明為any ?這樣反而更簡潔
老師,
interface Info {name:str,age:number}
function fn (row:Info):void {}
一個表格,有20列,當點擊某一行時,需要把20列的信息作為詳情展示出來,
當row參數使用接口時,是不是Info接口需要把這20個字段都要聲明下,感覺好麻煩。
還是直接把row的類型指明為any ?這樣反而更簡潔
2022-12-02
舉報
2025-01-10
定義完整的接口:雖然一開始覺得將
Info
接口聲明包含 20 個字段比較麻煩,但這是一種更規(guī)范和可靠的方式。它明確了數據的結構和類型,使得代碼更加清晰、易于理解和維護。例如:interface Info { ? ?col1: string; // 假設第一列是字符串類型 ? ?col2: number; ? ?col3: boolean; ? ?//... 依次聲明其他17列的類型 ? ?col20: string; }
使用類型別名簡化接口聲明:如果覺得在接口中直接聲明 20 個字段過于冗長,可以使用類型別名來簡化。例如:
type ColumnType = string | number | boolean; // 定義一個聯(lián)合類型,表示列可能的類型 interface Info { ? ?[key: string]: ColumnType; // 使用索引簽名,表示Info接口可以有任意字符串鍵,值為ColumnType類型 }
樣既保證了類型的準確性和安全性,又在一定程度上簡化了代碼的書寫