我想将可为null的类型强制转换为不可为null类型。
例如,如果我有一个类型,比如:
const type A = {b: "xyz"} | null
那么我想提取:
{b:"xyz"}
通过这样做:
A!
但它不起作用(当然,!
运算符适用于可为Null的"变量",而不是可为null的"类型"(。
有人能帮我解决这个问题吗?谢谢
如果您有一个类型:
type A = {b: "xyz"} | null
使用NonNullable
将从联合类型中删除null
和undefined
type NonNullableA = NonNullable<A>
如果您只想删除null
但仍保留undefined
,则可以使用Exclude
:
type NullExcludedA = Exclude<A, null>
在这种情况下,NonNullableA
和NullExcludedA
都会产生您想要的类型:
{b:"xyz"}