![](/img/trans.png)
[英]TypeScript union of strings not assignable to union of tuples in function
[英]Record function argument as union type is not assignable to its union values
目标是为映射器声明Record
类型定义,以限制键和 function 值。 这些函数的 arguments 具有不同的行为,因此使用联合类型定义。
PushNotificationPayloadVideoComment
是PushNotificationPayload
联合类型的一部分,但 TS 编译器检测到它不能分配给它的联合
TypeScript 版本:4.3.2
使用unknown
意味着分配的 function 应该能够处理任何参数类型,并且您正在使用只能处理特定类型的函数。
您可以使用自定义映射类型到 map 每个回调到适当的参数类型:
type Mapper = {
[P in PushNotificationPayload as P['category']]?: (payload: P) => void
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.