TypeScript 数组条件类型

问题描述 投票:0回答:0

提示:如果我的问题有点不清楚,请道歉,请随时指出如何改进它

好的,所以我有以下类型:

type InputType = 'date' | 'number' | 'textarea' | undefined | null
type InternalAcceptedTypes = 'hidden' | 'readonly' | 'fullsize' | undefined | null

我的目标是创建一个 InternalAcceptedTypes 数组 |输入方式如下:

  • 数组可以包含来自 InternalAcceptedTypes 的任意数量的属性,但只有一个来自 InputType
  • 如果我已经添加了一个 InputType 子类型,再添加一个会导致编译错误

例子:

  • const acceptedTypesArr = ['date', 'hidden', 'readonly', 'fullsize'] // OK
  • const notAcceptedTypeArr = ['date', 'hidden', 'number'] // 错误,InputType 的 2 个元素已添加到数组中

我真的不知道如何处理这种情况,因为我一直在使用 Typescript 进行简单的输入,所以欢迎任何建议

谢谢

javascript typescript typescript-typings typing
© www.soinside.com 2019 - 2024. All rights reserved.