在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 問答/HTML5  HTML/ 怎么在react的jsx中使用activeClassName改變上層或者其他標簽

怎么在react的jsx中使用activeClassName改變上層或者其他標簽的class呢?

clipboard.png
1里的li標簽class使用active可以正常顯示樣式但是把li標簽替換成NavLink無效,
直接在NavLink里設置樣式(圖中2的形式)只能改變a標簽(轉換成html后的a標簽)的class而不是li標簽,所以效果也不能實現(xiàn)。

我想根據(jù)路由比如to=“/”這個地址來讓li標簽里的className變成active。怎么才能做到呢?css里實在有些復雜,直接去改css不知道怎么改,有沒有react里可以實現(xiàn)的方法,或者能做到的思路?
非常感謝大佬們。

回答
編輯回答
夏夕

className={this.props.history.location.pathname === '/'?'active':' '}

在jsx中使用三元表達式可以完成這個功能。
首先得在當前組件中注入router信息,否則location是沒有的。

import { withRouter } from 'react-router-dom'

export default withRouter(你的組件)
2018年4月6日 14:28
編輯回答
凹凸曼
className={{active: this.props.history.location.href === '/'}}
2017年7月9日 10:56