[英]How to use this.state in my filter function when render component?
下面是我的代码...
somarray.user.filter(function(ele, index) {
if(this.state.showAllUser == false) {
return (index < 3)
}
else {
return true
}
})
渲染组件时,此过滤器函数内的“ this.state.showAllUser”未定义。
如何解决这个问题?
在函数中未正确定义。 通过绑定对其进行修复,以使其具有正确的定义。
somarray.user.filter(function(ele, index) {
if(this.state.showAllUser == false) {
return (index < 3)
}
else {
return true
}
}.bind(this))
您也可以将“ this”存储在另一个变量中,如下所示:
var self = this
somarray.user.filter(function(ele, index) {
if(self.state.showAllUser == false) {
return (index < 3)
}
else {
return true
}
})
这样,“ self.state.showAllUser”将具有您期望的值
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.