javascript - 角度 - 当过滤字段为空时过滤器抛出错误
问题描述
我有一个小问题。当我对数组进行过滤时,如果过滤的字段为空,我总是会出错,之后的其余代码都会失败。这是我的代码:
this.order= result.headerText.find((item) => item.textType === 'Order');
如果我有带有'Order'的文本类型,一切都很好,但如果我有文本类型为空,它会引发错误并且其余代码不会执行。
我如何检查是否有带有 Order 的 textType 并返回它,当它为空时它不会崩溃:)
解决方案
headerText 中的“项目”可能为 null 但不是 textType
this.order = result.headerText && result.headerText.find((item) => item && item.textType === 'Order');
如果您使用最新版本的打字稿,您可以使用可选链接提案
this.order = result.headerText?.find((item) => item?.textType === 'Order');
推荐阅读
- react-redux - Redux-Saga 不运行
- c# - 为 ASP.NET Core / EF Core / xUnit.NET 集成测试中的每个测试播种测试数据
- android - 如何在列表视图和滚动视图的末尾关闭波浪动画
- git - Git 是否会在克隆上带来未提交的更改?
- python-3.x - 更优化的解决方案
- ruby - 在父类方法实现的代码之间插入来自子类方法实现的代码
- javascript - 如何通过 Puppeteer 获取父子元素?
- node.js - 通过 POSTMAN 在 post 请求中发送 json 正文中的日期
- node.js - 在 npm 命令中将标志传递给脚本
- c++ - 使用带有int的getline时如何修复“没有重载函数“getline”的实例与参数列表匹配”