随笔分类 - 前端技术栈 / TypeScript
摘要:{ "compilerOptions": { "allowUnreachableCode": true, // 不报告执行不到的代码错误。 "allowUnusedLabels": false, // 不报告未使用的标签错误 "alwaysStrict": false, // 以严格模式解析并为每个
阅读全文
摘要:问题描述 import path from "path" // 模块 ""path"" 只能在使用 "esModuleInterop" 标志时进行默认导入 搜了一下解决方案,需要在tsconfig.json配置esModuleInterop为true 但是配置了依然无效 解决方案 换种写法 impo
阅读全文
摘要:interface和type都可以用作ts中限制变量的类型,它们有一些共同点 都能作为限制变量类型的方式 都能被class实现 但也有所区别 interface可以实现声明合并,type不行 interface A { a: string } interface A{ b:string } cons
阅读全文
摘要:type A = { a: number, b: number } type B = { a: number } // 交叉类型, 需要满足A和B的并集 const D: A & B = { a: 1, b: 2 } // 联合类型,需要满足A和B的交集 const E: A | B = { a:
阅读全文
摘要:问题 不能将类型“Timeout”分配给类型“number” Type 'Timeout' is not assignable to type 'number'. 解决方案 设置类型为NodeJS.Timeout 清除时使用delete ref.timer + clearTimeout export
阅读全文
摘要:问题: "this" 隐式具有类型 "any",因为它没有类型注释 'this' implicitly has type 'any' because it does not have a type annotation 解决方案: 将this放在函数参数列表上声明类型即可,使用的时候this不会干扰
阅读全文
摘要:vite并不会校验ts是否通过,需要添加typescript 安装ts yarn add typescript 校验ts "scripts": { "dev": "tsc --noEmit && vite", }, 配置ts tsconfig.json { "compilerOptions": {
阅读全文
摘要:Typescript 面向对象 类和接口 权限 readonly和private 类:定义了一切事物的抽象特点 对象:类的实例 面向对象三大特征: 封装: 隐藏内部实现,仅对外提供公共接口 继承: 子类继承父类,具有父类的属性和方法 多态: 在重写或实现相关属性方法时,不同的子类可以有不同的实现 属
阅读全文
摘要:JavaScript 数据类型 ECMAScript定义了8种数据类型 7种原始类型 Boolean Null Undefined Number BigInt(ES10) String Symbol 1种引用类型 Object TypeScript 类型 需要注意的几个点 unitypes联合类型
阅读全文
摘要:TypeScript 泛型 泛型是类型的变量,可以动态填入类型值 泛型还可以继承接口从而实现对填入类型的约束 初试泛型 const log = console.log // 为函数添加泛型,此时T表示形参类型 // 定义一个打印函数,打印并返回此形参 function print<T>(arg: T
阅读全文
摘要:interface User { name: string; id: number; age: number; } // Required提取全部属性 type reqUser = Required<User> /** type reqUser = { name: string; id: numbe
阅读全文
摘要:Typescript 类型体操 在网上看了一圈资料,类型体操的大致思路就是 通过extends结合三元运算符去判断与选择,通过never去过滤,通过keyof、obj[key] 去提取等等,通过这些运算最终得到更细粒度的类型值 指定类型为某一个值 // ts判断类型 type isNumber<T>
阅读全文
摘要:any绕过类型检查,或者说放弃类型检查 unknown表示未知类型,一般配合断言使用才能通过类型检查 能用unknown尽量用unknown,少用any
阅读全文
摘要:1 关于接口 对于值的类型检查是typescript的核心设计原则,而typescript接口的责任就是命名这些值的类型。 因此,可以说接口是typescript核心设计原则————类型检查的实现方式。 2 接口初探 用一个小demo来看看JavaScript和typescript的特点 funct
阅读全文
摘要:ts 类型 限定类型 变量限定类型 函数限定类型 函数参数限定类型 构造函数后面不需要给定类型(new以后得到对象) 枚举类型、数组类型、元组类型、不限定类型 never:无法返回的类型,比如死循环 限定数组元素对象类型,限定对象属性类型 断言类型 undefined null 变量类型 //变量限
阅读全文
摘要:typescript 是JavaScript的超集,由微软开发 1 使用typescript 下载:npm i typescript -g 单个ts文件的转换 命令行运行tsc ./src/index.ts 复杂ts引用情况 1 tsc --init 生成tsconfig.js,即ts配置文件 2
阅读全文