我有一个输入,如果用户搜索id并且与id匹配,它将显示状态。但是,如果用户没有提供正确的ID,则会给我一个错误。我应该怎么做,即使用户搜索无效的内容,它也只会显示“无效的ID”。
答案 0 :(得分:1)
根据您的代码,我已经看到 数组看起来像:
let Deliveries=[{DeliveryID:"WHKYYY", OwnerID:2, Staus:"Delivered"},
{DeliveryID:"MHKYYY", OwnerID:3, Staus:"Delivered"},
{DeliveryID:"KKHKYYY", OwnerID:4, Staus:"Warehouse"},
{DeliveryID:"LLHKYYY", OwnerID:2, Staus:"Delivered"},
]
问题是,当您搜索某项内容且与DeliveryID不匹配时,时间搜索结果将不确定。您可以使用||为避免使用未定义的值来设置像[]这样的空数组,在返回状态之前,您可以检查rearch结果。如果结果为空,则返回“”。
类似的代码:
let track =data.Deliveries.filter(item=> Model.searchQuery===item.DeliveryID)||[];
if(track .length>0){
//mathch the ID and informaiton is avialable
//other code here
}else{
// does not match. return null or ""
}