TS 玩的顺溜不顺溜,就看你的 d.ts 文件写的溜不溜。
在学如何书写声明文件之前,我们先来看看声明相关的一些东西。
当我们多次使用 interface 定义的时候,会合并接口
这里报错的原因是,我们并没有完全的实现 A 接口。
错误提示告诉我们,还有一个 age 属性没有。
假如你使用的 2.1 版本的 ts,那么你可以用 keyof 关键字拿到 A 的所有属性值类型。
此时必须要导出,不导出哪怕合并了,外面也访问不到。
真相只有一个,如下图。
命名空间与类,实现内部类。
此时有一个有意思的小问题
你会发现实例化后的 label 并不能访问它的 id 属性。
而直接访问却可以。
so? 哪出了问题?