我想编写一种自定义逻辑来确定哪个<NavLink>
是活动的。因此,我执行以下操作:
handleIsActive(match, location) { ... }
render() {
return <NavLink isActive={this.handleIsActive} />
}
这很完美。但是,如何将更多信息发送到handleIsActive
?例如:
<NavLink isActive={this.handleIsActive(product_id)} /> // Does not work
答案 0 :(得分:0)
我认为这是一个解决方案
<NavLink isActive={() => this.handleIsActive(product_id)} />
答案 1 :(得分:0)
您正在执行函数this.handleIsActive(product_id)
,并将返回值用作isActive
属性,所以您正在做的是(假设您没有从this.handleIsActive
返回任何内容)< / p>
<NavLink isActive={undefined} />
您需要传递对类似函数的引用
<NavLink isActive={() => this.handleIsActive(/* insert arguments here */)} />
答案 2 :(得分:0)
尝试一下
<NavLink isActive={(match, location) => this.handleIsActive(match, location ,product_id)} />
并处理这样的功能
handleIsActive(match, location, product_id) { ... }