我想将可为空类型转换为不可为空类型。
例如,如果我有这样的类型:
const type A = {b: "xyz"} | null
Run Code Online (Sandbox Code Playgroud)
然后我想提取:
{b:"xyz"}
Run Code Online (Sandbox Code Playgroud)
通过这样做:
A!
Run Code Online (Sandbox Code Playgroud)
但它不起作用(当然,!运算符适用于可为空的“变量”,而不是可为空的“类型”)。
有人可以帮我解决这个问题吗?谢谢!
如果你有一个类型:
type A = {b: "xyz"} | null
Run Code Online (Sandbox Code Playgroud)
使用将从您的联合类型中NonNullable删除null和:undefined
type NonNullableA = NonNullable<A>
Run Code Online (Sandbox Code Playgroud)
如果您只想删除null但仍保留,undefined可以使用Exclude:
type NullExcludedA = Exclude<A, null>
Run Code Online (Sandbox Code Playgroud)
在这种情况下,NonNullableA和NullExcludedA都会产生您想要的类型:
{b:"xyz"}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1589 次 |
| 最近记录: |