ReactJS 上下文 - 消费者内部有条件
ReactJS Context - conditional inside consumer
使用 ReactJs 上下文,我在导航栏中显示了一个计数值。我不想在值为 0 时显示它,但是我不知道如何实现它。
基本上在 CounterContext.Consumer 里面,我想添加一个 if 语句,以便仅在计数器 > 0
时显示
这是我的代码片段
<NavLink to={"/counterList"} className="nav-link" activeClassName="active">
<span className="glyphicon glyphicon-education" /> Counter List
<CounterContext.Consumer>
{(c) =>
<span className="badge badge-danger ml-10">{c.counters.filter(x => x.count > 0).length}</span>
}
</CounterContext.Consumer>
</NavLink>
你可以给箭头函数一个主体 {}
,将值存储在一个变量中,如果它等于 0
,return null
。
例子
<NavLink to={"/counterList"} className="nav-link" activeClassName="active">
<span className="glyphicon glyphicon-education" /> Counter List
<CounterContext.Consumer>
{c => {
const count = c.counters.filter(x => x.count > 0).length;
return count !== 0 ? (
<span className="badge badge-danger ml-10">{count}</span>
) : null;
}}
</CounterContext.Consumer>
</NavLink>
使用 ReactJs 上下文,我在导航栏中显示了一个计数值。我不想在值为 0 时显示它,但是我不知道如何实现它。
基本上在 CounterContext.Consumer 里面,我想添加一个 if 语句,以便仅在计数器 > 0
时显示这是我的代码片段
<NavLink to={"/counterList"} className="nav-link" activeClassName="active">
<span className="glyphicon glyphicon-education" /> Counter List
<CounterContext.Consumer>
{(c) =>
<span className="badge badge-danger ml-10">{c.counters.filter(x => x.count > 0).length}</span>
}
</CounterContext.Consumer>
</NavLink>
你可以给箭头函数一个主体 {}
,将值存储在一个变量中,如果它等于 0
,return null
。
例子
<NavLink to={"/counterList"} className="nav-link" activeClassName="active">
<span className="glyphicon glyphicon-education" /> Counter List
<CounterContext.Consumer>
{c => {
const count = c.counters.filter(x => x.count > 0).length;
return count !== 0 ? (
<span className="badge badge-danger ml-10">{count}</span>
) : null;
}}
</CounterContext.Consumer>
</NavLink>