部分调用带有类型转换到具有自定义NonNullableArrItems类型的NonNullable。
创始人
2024-12-24 02:30:19
0

问题代码示例:

type NonNullableArrItems = T extends (infer U)[] ? NonNullable[] : NonNullable;

function test(arr: T): NonNullableArrItems {
  // implementation
}

const a = test([1, null, 2]); // NonNullableArrItems
const b = test('abc'); // NonNullableArrItems

解决方法是使用类型分布法(distributive conditional types)指定数组元素的非空约束条件。在类型分布法的情况下,如果有联合类型时,将类型逐个拆分并组合,以处理每个类型。使用infer关键字来推断数组元素的类型。最后,将推断出的类型数组转换为非空类型数组。以下是解决方法的代码示例:

type NonNullableArrItems = T extends (infer U)[] ? { [K in keyof U]: NonNullable } : NonNullable;

function test(arr: T): NonNullableArrItems {
  // implementation
}

const a = test([1, null, 2]); // NonNullableArrItems
const b = test('abc'); // NonNullableArrItems

相关内容

热门资讯

黑科技插件!智星德州安卓版下载... 黑科技插件!智星德州安卓版下载方法(wepokeai代打)最初是有挂(真实有挂)-哔哩哔哩1、wep...
黑科技挂!wepokeai代打... 黑科技挂!wepokeai代打辅助(德扑ai机器人软件开发)果然有挂(有挂教学)-哔哩哔哩;德扑ai...
黑科技ai代打!聚星扑克有假(... 黑科技ai代打!聚星扑克有假(aa poker有外挂吗)果然真的是有挂(有挂规律)-哔哩哔哩,您好,...
黑科技苹果版!德州ai机器人(... 黑科技苹果版!德州ai机器人(wpk最新黑科技)从前存在有挂(有挂规律)-哔哩哔哩1、许多玩家不知道...
黑科技讲解!德州之星有辅助挂(... 您好,德扑ai助手软件这款游戏可以开挂的,确实是有挂的,需要了解加威信【136704302】很多玩家...
黑科技插件!微扑克如何让系统发... 黑科技插件!微扑克如何让系统发好牌(aa poker有外挂吗)果然有挂(有挂详情)-哔哩哔哩1、微扑...
黑科技教学!aapoker有外... 黑科技教学!aapoker有外挂(aapoker辅助工具ai)往昔真的有挂(有挂教学)-哔哩哔哩1、...
黑科技总结!wepoke辅助挂... 黑科技总结!wepoke辅助挂(wepoke智能ai)原生存在有挂(有挂攻略)-哔哩哔哩1、wepo...
黑科技私人局!来玩app德州扑... 黑科技私人局!来玩app德州扑克(aa poker有外挂吗)从前存在有挂(今日头条)-哔哩哔哩是一款...
黑科技好友!wepoke有透视... 自定义aa poker有外挂吗系统规律,只需要输入自己想要的开挂功能,一键便可以生成出微扑克专用辅助...