You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

ts-toolbelt的Object.P.Pick处理含数组字段类型结果异常问题咨询

问题原因与解决方案

你的错误出在Object.P.Pick的路径参数规则使用错误,该工具的第二个参数是层级对齐的路径数组,每一位元素对应当前层级需要选取的字段集合,不能跨层级填写不存在的字段。

错误原因

你传入的路径参数["name" | "posts", "id" | "posts", "title" ]存在两个问题:

  • 第二层路径写了不存在的posts字段:第二层要么是name对应的基础字符串类型(无子字段),要么是posts对应的数组元素类型,该类型的字段只有id、title、body,不存在posts字段,导致字段匹配失败
  • 额外新增了不必要的第三层路径:title属于数组元素的第二层字段,不是第三层字段,路径层级错位后,工具无法匹配到有效字段,最终返回空数组类型

正确写法

type Test = Object.P.Pick<User, ["name" | "posts", "id" | "title"]>

路径说明:

  • 第一位"name" | "posts":对应根层级User需要选取的字段
  • 第二位"id" | "title":对应posts数组内部元素需要选取的字段,工具会自动处理数组遍历、null类型保留逻辑,不需要额外声明特殊标识

内容的提问来源于stack exchange,提问作者Thomas

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.24 05:24:07