繁体   English   中英

映射函数 - 未处理的 JS 异常:TypeError:undefined 不是评估映射的对象

[英]Map Function - Unhandled JS Exception: TypeError: undefined is not an object evaluating map

我有一个名为 displayKeyHelpers.ts 的文件, members.map代码在第 118 行。该代码适用于大多数用户和 QA,但有时似乎成员未定义。 我正在查看一份崩溃报告,上面写着

displayKeyHelpers.ts, line 118
SIGABRT: Unhandled JS Exception: TypeError: undefined is not an object (evaluating 'n.map') This error is located at: in V in Unknown in Unknown in Unknown..

下面的函数中的成员似乎未定义。 如何添加支票?

export const memberDropdownOptions = (members: any): Option[] => {
  const options: Option[] = []
  members.map((member: Person) => {
    options.push({
      label: `${member.firstName} ${member.lastName}`,
      value: member.dependentNumber,
    })
  })
  return options
}

这是我尝试过的,但它在一些单元测试中失败了,所以我猜这是不对的:

export const memberDropdownOptions = (members: Person[]): Option[] => {
  const options: Option[] = []
  members?.map((member: Person) => {
    options.push({
      label: `${member?.firstName} ${member?.lastName}`,
      value: member?.dependentNumber,
    })
  })
  return options
}

该函数是这样使用的:

const memberOptions = memberDropdownOptions(members)

您传递给memberDropdownOptions(members)members参数在调用函数时未定义。

members是否依赖某种异步逻辑来赋值? 回溯到它被赋值的地方,并确保memberDropdownOptions()只在它有一个值时才触发。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM