繁体   English   中英

如何使用打字稿键入单个参数和其余参数的联合?

[英]How to type the union of a single parameter and rest parameters with typescript?

如果我有一个将对象或项目列表作为参数的函数,

f1 = (p: Object) => ...
f1 = (...p: string[]) => ...

这是我想要实现的目标,但显然它不起作用:

f1 = (p: Object | ...p: string[]) => ...

我如何输入这种“联合”?

您可以在其余参数中对函数声明或元组使用重载:

const f1 = (...p: [object] | string[]) => { }
f1({})
f1({}, {}) //err
f1("")
f1("", '')

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM