1、对类型做一些限制,这里我们对对象类型做一些限制
![]()
还有一个就是我们调用这里的时候
![]()
按着Ctrl点击这里,会弹出,这里这样写
![]()
相当于我们可以直接在这里给这个弄一个泛型
![]()
这样写
![]()
这段代码使用 TypeScript 定义了一个名为 IAccount 的接口(Interface),下面为你详细解释:
在 TypeScript 里,接口是用来定义对象的类型结构的,它描述了对象应该具有哪些属性,以及这些属性的类型。这里的 IAccount 接口定义了一个账户对象的结构,该对象需要包含 name 和 password 两个属性。
interface IAccount {:这行代码声明了一个名为 IAccount 的接口。在 TypeScript 里,通常使用 interface 关键字来定义接口,并且按照命名约定,接口名一般以大写字母 I 开头,以便和其他类型区分开来。
name: string:这行代码定义了 IAccount 接口中的一个属性 name,其类型为 string。这意味着实现该接口的对象必须包含一个名为 name 的属性,并且这个属性的值必须是字符串类型。
password: string:这行代码定义了 IAccount 接口中的另一个属性 password,其类型同样为 string。也就是说,实现该接口的对象还必须包含一个名为 password 的属性,且这个属性的值也得是字符串类型。
}:这是接口定义的结束符号,表示 IAccount 接口的定义结束。
![]()
这三个文件都会用到
具体吧文件夹放到哪里
方法一:一般写到起源的位置,哪里产生的这个数据的起源,然后他对应的类型,定义到起源的位置。
然后我们新建types文件夹,把这个页面所有类型定义都放进来,我们在创一个index.ts![]()
把刚才写的放过来,给他export出去
![]()
export出去要引用他就应该导入这个类型
方法二:对于在很多模块中都会用到的类型,我们另一种方法是单独创一个Types,在里面创建文件login.d.ts(表示这里只是做一些类型的声明)或者longin.ts或者longin_types.ts。还可以在弄一个统一的出口index.ts,
![]()
把刚才的代码复制过来
![]()
这里就可以这样写了
![]()
export * from './login' 是 JavaScript(尤其是在使用 ES6 模块系统的环境中,像 Node.js、现代浏览器等)里的一种模块导出语法,下面详细解释其含义和作用。
这句话的意思是从 ./login 这个模块文件里导出所有可导出的内容,并且把这些内容作为当前模块的导出内容。简单来说,就是将 ./login 模块里的所有导出项都 “转发” 到当前模块。
export:这是 ES6 模块系统里用于导出模块内容的关键字,借助它可以把模块内部的变量、函数、类等暴露给其他模块使用。
*:这是一个通配符,表示导出指定模块里的所有导出项。
from './login':指定要从中导出内容的模块路径。./ 代表当前目录,所以 ./login 意味着在当前目录下查找名为 login 的模块文件,文件的扩展名可以省略,一般会是 .js、.mjs 或者 .ts(如果使用 TypeScript)。
这里就这样写
![]()
这里这样写
![]()
这里这样写
![]()