首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
ts
订阅
e195
更多收藏集
微信扫码分享
微信
新浪微博
QQ
28篇文章 · 0订阅
巧用 TypeScript(五)-- infer
infer 最早出现在此 PR 中,表示在 extends 条件语句中待推断的类型变量。 在这个条件语句 T extends (param: infer P) => any ? P : T 中,infer P 表示待推断的函数参数。 整句表示为:如果 T 能赋值给 (param…
巧用 TypeScript(四)
在定义泛型后,有两种方式使用,一种是传入泛型类型,另一种使用类型推断,即编译器根据其他参数类型来推断泛型类型。简单示例如下: 它通常与映射类型一起使用,用来实现一些比较复杂的功能。 test 函数将传入参数的所有属性取出来,现在我们来一步一步加工,实现想要的功能。 首先,更改传…
巧用 TypeScript(三)
此时,TypeScript 能推出 a 的类型是 A, b 的类型是 B。 我们期望它会如预想时那样工作,可是事与愿违,Promise.all(requestList),会出现类型兼容性的报错,在这个 Issues 里,描述了相同的问题。 在 JavaScript 基础上,Ty…
巧用 TypeScript(二)
Decorator 早已不是什么新鲜事物。在 TypeScript 1.5 + 的版本中,我们可以利用内置类型 ClassDecorator、PropertyDecorator、MethodDecorator 与 ParameterDecorator 更快书写 Decorato…
巧用 TypeScript (一)
它也适用于参数不同,返回值类型相同的场景,我们只需要知道在哪种函数类型定义下能使用哪些参数即可。 在这个 test 函数里,我们的本意可能是当传入参数 para 是 User 时,不传 flag,当传入 para 是 number 时,传入 flag。TypeScript 并不…
将小驼峰接口类型递归的转成大驼峰:TypeScript 高级类型与 4.1 字符串模板类型实战
在 Javascript 中,变量名,键的命名风格一般都是 camelCase 的,而在许多接口规范中,则都是接受 PascalCase 风格的 JSON Object。完成大驼峰参数到小驼峰参数的转换,这在 Javascript 中是较容易实现的。可是在 Typescript…
TypeScript 4.1 新特性:字符串模板类型,Vuex 终于有救了?
TypeScript 4.1 快要发布了,老爷子 Anders Hejlsberg 加入了一项重大更新,「字符串模板类型」 的支持。昨天看到这个更新的我特别兴奋,曾几何时,只要一遇到字符串拼接相关的类型,TypeScript 就束手无策了,比如: Vuex 中加了 namesp…
TypeScript基础看腻了?进阶实现智能类型推导的简化版Vuex,手把手带你实现。
React + TypeScript + Hook 带你手把手打造类型安全的应用。 React Hook + TypeScript 手把手带你打造use-watch自定义Hook,实现Vue中的watch功能。 这篇文章我决定更进一步,直接用TypeScript实现一个类型安全…
TypeScript 参数简化实战(进阶知识点conditional types,中高级必会)
TypeScript中有一项相当重要的进阶特性:conditional types,这个功能出现以后,很多积压已久的TypeScript功能都可以轻而易举的实现了。 没错,它只是节省了几个字符串,但是却是一个非常适合我们深入学习条件类型的实战。 这样的语法就叫做条件类型,A, …
用 TS 类型系统实现大数加法
实现的结果 如何实现 网上有很多实现 TS 加法的奇淫技巧,但是都有很多限制,没法实现太大的数字计算,如何实现一种高效的大数加法呢? String -> Number[] 首先我会把 String 转