打字稿:无法读取未定义的 属性 'toLowerCase'
Typescript: Cannot read property 'toLowerCase' of undefined
我在网上收到这个错误:
return filter ? value.filter(element => element.type.toLowerCase().indexOf(filter.toString().toLowerCase()) != -1) : value;
当element.type
为空字符串时(过滤空列)。如何解决这个问题?
如消息所述:element.type
是 undefined
。在您的 filter
调用中添加检查。像这样,你放什么取决于你期待什么,我只能猜测。
return filter
? value.filter(element => element.type && element.type.toLowerCase().indexOf(filter.toString().toLowerCase()) != -1)
: value;
此错误本身给出了解决方案,因为传递给更改为小写的值是 null 或未定义。
要解决此类错误,请将要传递的数据的语句放在 if
语句中。
喜欢:
if(somevalue != null || somevalue != undefined)
{ ... }
将语句放在 if
语句中解决了我的问题。
说得好,错误本身给出了解决方案,因为传递给更改为小写的值是 null
或 undefined
。
只需添加到您看到错误的代码行
if(somevalue != null || somevalue != undefined)
{ ... }
我在网上收到这个错误:
return filter ? value.filter(element => element.type.toLowerCase().indexOf(filter.toString().toLowerCase()) != -1) : value;
当element.type
为空字符串时(过滤空列)。如何解决这个问题?
如消息所述:element.type
是 undefined
。在您的 filter
调用中添加检查。像这样,你放什么取决于你期待什么,我只能猜测。
return filter
? value.filter(element => element.type && element.type.toLowerCase().indexOf(filter.toString().toLowerCase()) != -1)
: value;
此错误本身给出了解决方案,因为传递给更改为小写的值是 null 或未定义。
要解决此类错误,请将要传递的数据的语句放在 if
语句中。
喜欢:
if(somevalue != null || somevalue != undefined)
{ ... }
将语句放在 if
语句中解决了我的问题。
说得好,错误本身给出了解决方案,因为传递给更改为小写的值是 null
或 undefined
。
只需添加到您看到错误的代码行
if(somevalue != null || somevalue != undefined)
{ ... }