iT邦幫忙

2019 iT 邦幫忙鐵人賽

DAY 26
0
自我挑戰組

請你當我的好朋友吧!ReactJS!系列 第 26

【DAY 26】React-router,其它很有用的組件(上)

【前言】
  倒數最後五篇~~一起加油吧!
【正文】
  昨天講完Link,今天來講跟Link很常用到的其他組件八吧!

Switch:用來包Route與Redirect,只會render第一個與網址匹配的<Route>的component

import { Switch, Route } from 'react-router'
// 只會render第一個與網址匹配的Route底下的component,比如如果我們現在在 ./about 下
<Switch>
  <Route exact path="/" component={Home}/> // 不會render
  <Route path="/about" component={About}/> // 有匹配到,會render,下面省略不找
  <Route path="/:user" component={User}/>
  <Route component={NoMatch}/>
</Switch>

NavLink:就是一個Link,一個會有style的Link

  1. activeClassName:string,就是被匹配到的時候,對他增加class name
  2. activeStyle:object,就是被匹配到的時候,對他增加css inline-style樣式
  3. isActive:boolean,利用function來判斷該NavLink是否被匹配到
  4. exact:是否路徑要與網址一模一樣
  5. strict:是否要嚴格判斷結尾斜線
import { NavLink } from 'react-router-dom'

<NavLink to="/faq" activeClassName="selected">FAQs</NavLink>
<NavLink to="/faq" activeStyle={{ fontWeight: "bold", color: "red" }}>FAQs</NavLink>

  今天就先整理這兩個吧!明天來做最後的Redirect轉址,估掰~


上一篇
【DAY 25】react-router三劍客,Router、Route、Link(下)
下一篇
【DAY 27】React-router,其它很有用的組件(下)
系列文
請你當我的好朋友吧!ReactJS!30

尚未有邦友留言

立即登入留言