在 TypeScript 中,可以使用索引签名来在接口定义后添加额外的属性。具体来说,可以在接口中定义一个任意类型的索引签名,这样就可以在对象中添加任意数量的自定义属性。
下面是一个例子:
```
interface Person {
name: string;
age: number;
[propName: string]: any; // 索引签名
}
let person: Person = {
name: 'Tom',
age: 18,
gender: 'male' // 自定义属性
};
```
在上面的例子中,我们定义了一个`Person`接口,其中包含了`name`和`age`两个属性。接着,我们使用一个任意类型的索引签名`[propName: string]: any`来表示该接口可以包含任意数量的自定义属性。最后,我们创建了一个`person`对象,并添加了一个自定义属性`gender`。
需要注意的是,如果你使用了索引签名,那么在访问对象的属性时,编译器将不会检查这些属性是否存在于接口中。因此,在使用自定义属性时,需要确保它们的名称和类型都正确无误。