【发布时间】:2020-04-23 08:16:13
【问题描述】:
我想在 React 中跳过数组中的所有空值 这是我的代码的一部分。 我在地图功能之前添加了过滤器,但它看起来不起作用。
componentDidMount(){
client.getEntries({content_type:'formRequest'}).then(response => {
this.setState({qoutes: response.items});
}).catch(e => {
console.log(e);
});
}
render(){
const user = "name";
const qoutes = this.state.qoutes
.filter(i => i !== null)
.map((qoute, i) =>
user === qoute.fields.user || user === qoute.fields.company ?
<QoutesListItem id={i} key={i} qoute={qoute} />
: null)
return(<div>{qoutes}<div>)
我试着做这样的功能,但是效果不好
const qoutes = this.state.qoutes.filter((qoutes)=>{
if(qoutes !== null ) {
return qoutes;
}}).map((qoute, i) =>
如何避免空值并获取可用数据(在我的情况下只有三个对象)
【问题讨论】:
-
过滤器是正确的,但在下一个
map的某些情况下您将返回null。你的null元素可以来自那里吗? -
不确定。逻辑是如果用户等于其中一个字段然后显示它,我在页面上得到三个元素
-
也许你是对的......但我不知道如何解决它。例如,如果名称不正确,我会得到 14 个空值 ...
-
在地图之后再做一个过滤器
标签: reactjs dictionary filter