打字稿:无法读取未定义的属性“toLowerCase”

pla*_*one 0 typescript angular2-filtering angular

我在线收到此错误:

 return filter ? value.filter(element => element.type.toLowerCase().indexOf(filter.toString().toLowerCase()) != -1) : value;
Run Code Online (Sandbox Code Playgroud)

当 element.type 为空字符串时(过滤空列)。如何解决这个问题?

Igo*_*gor 5

正如消息所述:element.typeundefined。在您的filter通话中添加检查。像这样的东西,你放什么取决于你期待什么,我只能猜测。

return filter 
    ? value.filter(element => element.type && element.type.toLowerCase().indexOf(filter.toString().toLowerCase()) != -1) 
    : value;
Run Code Online (Sandbox Code Playgroud)