返回
轻松解答 TS 常见问题:全面整理 60+ 疑惑,持续更新中
前端
2023-10-28 03:19:21
前言
在使用 React 全家桶 + TS 开发项目的一年中,我踩过不少坑,也积累了一些经验。在此,我整理了在项目中遇到的疑惑和问题,希望能帮助到其他 TS 开发者。
正文
1. TS 类型检查
- 如何在 TS 中定义类型?
- 如何在 TS 中检查类型?
- 如何在 TS 中使用类型注解?
- 如何在 TS 中使用类型推断?
- 如何在 TS 中使用类型别名?
- 如何在 TS 中使用接口?
- 如何在 TS 中使用类?
- 如何在 TS 中使用泛型?
- 如何在 TS 中使用模块?
- 如何在 TS 中使用异步?
2. TS 代码报错
- TS2322: 类型“A”无法分配给类型“B”。
- TS2345: 无法将类型“A”分配给类型“B”。
- TS2351: 类型“A”不能是类型“B”的子类型。
- TS2352: 类型“A”的参数不能是类型“B”。
- TS2353: 类型“A”的返回值不能是类型“B”。
- TS2364: 类型“A”的对象成员“B”不能是类型“C”。
- TS2365: 类型“A”的属性“B”不能是类型“C”。
- TS2366: 类型“A”的索引签名不能是类型“B”。
- TS2367: 类型“A”的构造函数签名不能是类型“B”。
- TS2368: 类型“A”的方法“B”不能是类型“C”。
3. TS 代码提示
- 如何在 TS 中获取代码提示?
- 如何在 TS 中使用代码提示?
- 如何在 TS 中禁用代码提示?
- 如何在 TS 中配置代码提示?
- 如何在 TS 中安装代码提示扩展?
4. TS 代码错误
- 如何在 TS 中修复代码错误?
- 如何在 TS 中调试代码错误?
- 如何在 TS 中预防代码错误?
- 如何在 TS 中处理代码错误?
- 如何在 TS 中报告代码错误?
5. TS 泛型
- 如何在 TS 中使用泛型?
- 如何在 TS 中定义泛型函数?
- 如何在 TS 中定义泛型类?
- 如何在 TS 中使用泛型接口?
- 如何在 TS 中使用泛型模块?
- 如何在 TS 中使用泛型异步?
- 如何在 TS 中使用泛型装饰器?
- 如何在 TS 中使用泛型元编程?
- 如何在 TS 中使用泛型高级类型?
- 如何在 TS 中使用泛型约束?
6. TS 接口
- 如何在 TS 中定义接口?
- 如何在 TS 中使用接口?
- 如何在 TS 中扩展接口?
- 如何在 TS 中实现接口?
- 如何在 TS 中使用接口类型注解?
- 如何在 TS 中使用接口类型推断?
- 如何在 TS 中使用接口别名?
- 如何在 TS 中使用接口泛型?
- 如何在 TS 中使用接口约束?
- 如何在 TS 中使用接口继承?
7. TS 类
- 如何在 TS 中定义类?
- 如何在 TS 中使用类?
- 如何在 TS 中继承类?
- 如何在 TS 中重写类方法?
- 如何在 TS 中实现类接口?
- 如何在 TS 中使用类类型注解?
- 如何在 TS 中使用类类型推断?
- 如何在 TS 中使用类别名?
- 如何在 TS 中使用类泛型?
- 如何在 TS 中使用类约束?
8. TS 模块
- 如何在 TS 中定义模块?
- 如何在 TS 中使用模块?
- 如何在 TS 中导入模块?
- 如何在 TS 中导出模块?
- 如何在 TS 中使用模块类型注解?
- 如何在 TS 中使用模块类型推断?
- 如何在 TS 中使用模块别名?
- 如何在 TS 中使用模块泛型?
- 如何在 TS 中使用模块约束?
- 如何在 TS 中使用模块加载器?
9. TS 异步
- 如何在 TS 中使用异步?
- 如何在 TS 中使用 Promise?
- 如何在 TS 中使用 async/await?
- 如何在 TS 中使用 Generator?
- 如何在 TS 中使用 Observable?
- 如何在 TS 中使用 RxJS?
- 如何在 TS 中使用异步类型注解?
- 如何在 TS 中使用异步类型推断?
- 如何在 TS 中使用异步别名?
- 如何在 TS 中使用异步泛型?
10. TS 装饰器
- 如何在 TS 中使用装饰器?
- 如何在 TS 中定义装饰器?
- 如何在 TS 中使用装饰器工厂函数?
- 如何在 TS 中使用装饰器类?
- 如何在 TS 中使用装饰器元编程?
- 如何在 TS 中使用装饰器高级类型?
- 如何在 TS 中使用装饰器约束?
- 如何在 TS 中使用装饰器继承?
- 如何在 TS 中使用装饰器组合?
- 如何在 TS 中使用装饰器