中的類型(vs接口)我無法確定何時,如果您想要使用type
而不是interface
作爲打字稿中的變量。假設有以下兩種:何時使用TS
type User = {
id: string;
name: string;
type: string;
}
interface User {
id: string;
name: string;
type: string;
}
我可以定義與兩個完全相同的是const user: User = ...
的變量。但是,這裏有所有的事情我可以做interface
,我不能做types
:
// Extension:
interface AdminUser extends User {
permissions: string[];
role: string;
}
// Using in abstract method:
abstract class Home {
abstract login(user: User): void;
}
class AdminHome extends Home {
login(user: AdminUser) {
...
}
}
只是僅舉幾例。
所以我的問題是:你什麼時候想要使用type
?