随笔分类 - TypeScript
发表于 2024-03-13 00:08阅读:35评论:0推荐:0
摘要:export type Primitive = undefined | null | boolean | string | number | symbol; export type DeepRequired<T> = T extends Primitive ? T : keyof T extends
阅读全文 »
发表于 2024-03-04 15:34阅读:109评论:0推荐:0
摘要:在 TypeScript 中,Pick 和 Extract 是两种不同的类型操作工具。它们分别用于从一个已有的类型中选择或提取部分属性和从联合类型中提取符合条件的类型。 Pick 类型 Pick<T, K> 用于从类型 T 中选取指定的键 K 所对应的属性,创建一个新的类型。 示例: interfa
阅读全文 »
发表于 2024-03-03 10:54阅读:533评论:0推荐:0
摘要:在 TypeScript 中,当你在一个文件中添加 export {} 时,其作用主要有以下几点: 创建模块(Module): 在 TypeScript 中,每个 .ts 文件都是一个模块。通过添加空的 export {},即使该文件当前没有实际导出任何内容,也明确地将文件标记为一个模块。 这样可以
阅读全文 »
发表于 2024-03-02 23:42阅读:64评论:0推荐:0
摘要:下方数据结构可以被描述为一个JavaScript对象(Object),其中每个键是一个UUID(Universally Unique Identifier),值是一个待办事项对象。 在编程和数据结构领域,这种组织形式没有一个特定的官方名称,但它通常被称为“字典”、“映射”、“关联数组”或“哈希表”。
阅读全文 »
发表于 2024-02-26 18:54阅读:165评论:0推荐:0
摘要:枚举的位运算 在枚举中,可以使用位运算符来对枚举值进行位运算操作。位运算是一种对二进制数进行操作的方式,它可以对枚举值的各个位进行逻辑运算,从而实现一些特定的功能。 以下是常用的位运算符及其功能: 按位与(&):将两个操作数的每个对应位进行与运算,结果中每个位都是两个操作数对应位上都为1时才为1,否
阅读全文 »
发表于 2024-02-26 18:52阅读:61评论:0推荐:0
摘要:在typescript项目中什么场景适合定义枚举值,什么场景适合定义常量类 在 TypeScript 中,枚举(enum)和常量类(通常是带有只读属性的类)都有其适用场景: 适合定义枚举值的场景: 有限且命名的集合: 当你需要表示一组固定的、可枚举的值,并且每个值都有一个明确的名字时,使用枚举类型是
阅读全文 »
发表于 2024-02-25 14:23阅读:799评论:0推荐:0
摘要:如果组件中多次使用 useState 怎么办?React 如何“记住”哪个状态对应哪个变量? React 是完全根据 useState 的调用顺序来“记住”状态归属的,假设组件代码如下: const Counter = () => { const [count, setCount] = useSta
阅读全文 »
发表于 2024-02-25 10:35阅读:84评论:0推荐:0
摘要:在 TypeScript 中,定义子组件的 props 通常有以下两种方式: 接口(Interface): // 定义一个接口来描述 Props interface MyComponentProps { title: string; items: string[]; onItemSelected:
阅读全文 »
发表于 2024-02-25 10:04阅读:123评论:0推荐:0
摘要:在使用了 TypeScript 的 React 项目中,由于 TypeScript 已经提供了静态类型检查的能力,通常不需要再额外使用 prop-types 库进行运行时的类型检查。 TypeScript 在编译阶段就能通过类型注解确保组件之间的 props 类型正确无误,这有助于在开发阶段就发现类
阅读全文 »
发表于 2024-02-21 14:43阅读:17评论:0推荐:0
摘要:(ColumnTypes[number] & { editable?: boolean; dataIndex: string; })[] 在TypeScript中,这段类型定义可以分解理解: ColumnTypes[number]:首先,如果 ColumnTypes 是一个数组类型(如 Column
阅读全文 »
发表于 2024-02-21 14:39阅读:24评论:0推荐:0
摘要:在TypeScript中,Exclude<T, U> 是一个内置的类型操作符,它的作用是从联合类型 T 中排除那些与类型 U 相匹配的类型。 这里的 EditableTableProps["columns"] 表示从 EditableTableProps 这个接口或类型中提取 columns 属性的
阅读全文 »
发表于 2024-02-21 14:36阅读:169评论:0推荐:0
摘要:在TypeScript中,Parameters<T>是一个类型操作符,它会提取函数类型T的参数类型作为一个元组(tuple)类型。这里的 typeof Table 指的是获取名为 Table 的构造函数或函数类型的类型。 如果 Table 是一个类或函数,那么 Parameters<typeof T
阅读全文 »
发表于 2024-02-07 11:38阅读:1167评论:0推荐:0
摘要:global.d.ts 文件在 TypeScript 项目中是一个全局声明文件,它的作用是为全局范围内的变量、函数或其他类型提供类型定义。 这个文件中的声明可以让TypeScript编译器知道那些在运行时存在的、但未包含在任何模块中的全局变量和函数等。 例如,在浏览器环境中,一些全局对象如 wind
阅读全文 »
发表于 2024-02-06 16:35阅读:18评论:0推荐:0
摘要:isOfType 是一个类型保护函数,它用于在运行时检查传入的变量是否具有指定类型的特定属性。以下是对这个方法的设计和使用文档的描述: 设计 export const isOfType = <T>( varToBeChecked: any, propertyToCheckFor: keyof T )
阅读全文 »
发表于 2024-02-06 14:31阅读:31评论:0推荐:0
摘要:在TypeScript中,Omit<T, K>是一个内置的实用类型(从TypeScript 3.5版本开始提供),用于创建一个新的类型,该类型包含了原始类型T的所有属性,但排除了指定的键K。 其定义如下: type Omit<T, K extends keyof any> = Pick<T, Exc
阅读全文 »