我正在尝试创建一个 TypeScript 方法,它将任意数量的通用列表合并到一个新列表中,其中新列表的类型是原始列表中项目类型的并集。 我有一个列表 class 如下: 我想向 List 添加一个 static 合并方法,它接受任意数量的 List 对象并将它们的项目合并到一个新的 List ob ...
我正在尝试创建一个 TypeScript 方法,它将任意数量的通用列表合并到一个新列表中,其中新列表的类型是原始列表中项目类型的并集。 我有一个列表 class 如下: 我想向 List 添加一个 static 合并方法,它接受任意数量的 List 对象并将它们的项目合并到一个新的 List ob ...
解释器足够聪明,可以推断过滤器 function 的结果将是一个字符串数组,但它认为这不能分配给相同类型的变量 b? 有什么办法可以解决这个问题而不必被迫这样做 ...
我想创建一个 function,它结合了 string|number arrays 的值。因此,在尝试使用联合类型扩展通用参数后,我得到了我不理解的奇怪行为。 在某些情况下,只有第一个项目的值被提取用于类型检查,有时两者都被提取。 这是一个例子 我希望 function 接受 arrays 个字符 ...
我正在构建一个下拉式组件,值和选项是不同的道具。 我希望使用 Typescript 来确保该值是一个有效选项。 虽然我可以在运行时执行此检查,但我觉得这是我应该能够在 TS 中执行的操作。 这可能吗?interface Props<N extends number> { coun ...
考虑这种类型和这种泛型:type Data = { item: number }; type Generic<T> = { obj: T; }; 现在这是它的一个实例:const test: Generic<Data> = { obj: { item: 0 } }; ...
我有以下类型type A = { foo: number bar: number } type B = { foo: string bar: string } 我想编写一个 function f() ,它接受一个完全或部分类型为 A 的参数,并输出一个具有相同键但类型为 B 的类 ...
下面的代码定义了一个 function stringsToDates ,它将采用原语 object 或 Promise 并递归地将它找到的任何 ISO8601 日期字符串(序列化 JSON)转换为实例化的 Date 对象。 我怎样才能使这样的 function 类型安全,以便我可以调用const ...
所以这里的问题是我想传递T ,它可以是string , number , boolean , object或array或function问题是我不知道如何在这种情况下处理ab("hello")并且有 T作为值返回。 这是我一直看到的错误并链接到错误 ...
所以,我有select的接口。 我需要有类型的value 。 如果multiple等于true , value类型必须是string[]或string (如果multiple被禁用)。 成分: 我试过像这样使用通用的 但我收到错误: 'multiple' implicitly has type ' ...
我想制作一个可以从 function data的返回值推断类型T的接口,以便 function step可以将this的类型作为参数接收。 像这样: 但不必指定类型。 类似于 Vue.js (v3) 中使用data function 所做的,其中所有方法都可以访问组件的 state 的成员 我知道 ...
我想输入一个允许访问任意属性的 JavaScript Proxy 。 一个人为的例子,一个 object 将每个属性映射到它自己的属性名称: 我不希望 TypeScript 自动推断proxy.foo存在,但我想提供一种类型,使其知道它存在并且属性的值类型取决于属性名称。 下面的映射类型至少可以防止 ...
我有一些 JSON 数据,我用as const断言强类型化了这些数据。const myList = [ { type: 'uint256'}, { type: 'address'} ] as const; 现在我想将其转换为以下元组类型:[number, string] 基本上,如果类型 ...
我有通用类型的 function。 但它返回错误Type 'boolean' is not assignable to type 'string'. 如何通过保持类型通用来解决此通用类型问题。 因为数组是未知的,值可能有不同的自定义类型。 ...
我有以下带有多个接口、组件和密钥/接口 map 的 TS 代码。interface FooProps { 'keyInFoo': string } const Foo = (props: FooProps) => {} interface BarProps { 'keyIn ...
我正在编写一个包装器 class,它将包含与用户实体交互的功能,例如检查用户是否为访客的方法、检查他的权限的功能等,以及我想为其字段创建访问器的方法之一比如名字,email,id 。 我的想法是访问者会通过实体中字段的名称从用户自己那里返回数据。 这是我的代码和我想更改的注释: 是否可以这样安排,例 ...
我有一个 function,其泛型是 1 个元素的元组或 2 个元素的元组。 我想确保 function 中使用的所有属性都使用相同长度的元组。type TypeA = [string] // Tuple of 1 element type TypeB = [string, string] // T ...
抱歉,如果标题不是很清楚,但我不知道如何更好地表达我的问题。 我有一个Process class: 实例化新进程 Object 时: 我想对传递给 Message 构造函数的parameter进行类型检查,以匹配 function 参数的类型。 就像在上面的代码中,如果我传递一个数字而不是字符串,我 ...
我想要一个通用类型谓词,它允许我检查对象属性的类型。 为了说明这一点,我想实现以下目标:const a: { [key in string]: string | string[]} = { arrayProp: ["this", "is", "an", "array"], otherProp ...
我已经为此苦思冥想了一段时间,所以我决定在 Stackoverflow 上提出这个问题,希望有人能够帮助我。 这是我的问题的简化代码片段版本: TypeScript Playground 解释: 我希望在example function 使用特定option参数执行后自动完成。 因此,如果我键入e ...
我正在开发一个 TypeScript 库(这里是),用于代数数据类型(或任何人想称呼它们的东西),并且正在努力处理一些更复杂的类型。 代数数据类型的工作方式如下:// Create ADT instantiator const value_adt = adt({ num: (value: n ...