typescript - Typescript中命名元组的通用名称是什么?
问题描述
我写了这段代码:
type SomeOptions = {
a: string;
};
type SomeMethod<T extends any[]> = (
...args: [...T, otherOptions: SomeOptions]
) => void;
但是 TypeScript 检查器会抛出错误:“元组成员必须都具有名称或都没有名称。”
那么如何定义T
为命名元组呢?
解决方案
这可能是你想要的:
type SomeOptions = {
a: string;
};
type SomeMethod<T extends any[]> = (
...args: [...pre: T, otherOptions: SomeOptions]
) => void;
或者
type SomeOptions = {
a: string;
};
type SomeMethod<T extends any[]> = (
...args: [...T, SomeOptions]
) => void;
推荐阅读
- php - 使用文件系统从 Dropbox 下载的 Laravel 文件
- typescript - typeorm querybuilder包括与查询无关的表?
- java - 我想在一行中输入“Iphone 6s”、“iphone”、“35000.0”,但我得到了 java.util.InputMismatchException
- scikit-learn - 从决策树回归模型保存的 odt 文件中的数学解释
- java - 如何将参数传递给 Spring Boot REST 控制器?
- c++ - 为什么我的程序没有改变结构变量中的值?
- php - 为仪表板创建 jQuery 小部件的有效方法
- mysql - 如何找出哪一列的结果集?如果我们在单个表上使用 OR 运算符在 where 子句中写入 3 列
- amazon-web-services - AWS ElastiCache 集群和 AWS ElastiCache 复制组有什么区别?
- javascript - 用于两个切换的 jQuery/JavaScript if 语句