成人无码视频,亚洲精品久久久久av无码,午夜精品久久久久久毛片,亚洲 中文字幕 日韩 无码

資訊專欄INFORMATION COLUMN

Router入門0x204: react-route簡單栗子

番茄西紅柿 / 3095人閱讀

摘要:概述這一章仔細(xì)講一講的使用栗子簡單使用源碼簡單使用首頁文章我的首頁文章我的效果帶導(dǎo)航激活效果源碼帶導(dǎo)航效果首頁文章我的首頁文章我的效果說明增強(qiáng)版,如果當(dāng)前路由命中,將會啟用或者。

0x000 概述

這一章仔細(xì)講一講 react-route 的使用栗子

0x001 簡單使用

源碼

import React from "react"
import ReactDom from "react-dom"
import {BrowserRouter, Switch, Route, Link, withRouter} from "react-router-dom"

// 簡單使用
class App extends React.Component {
    render() {
        return (
            
首頁 文章 我的

({render: () =>

首頁

})}>
({render: () =>

文章

})}>
({render: () =>

我的

})}>
) } } let MyApp = withRouter(App) ReactDom.render( , document.getElementById("app") )

效果

0x002 帶導(dǎo)航激活效果

源碼

import React from "react"
import ReactDom from "react-dom"
import {BrowserRouter, Switch, Route, NavLink, withRouter} from "react-router-dom"
import "./App.css"
// 帶導(dǎo)航效果
class App extends React.Component {
    render() {
        return (
            
首頁 文章 location.pathname==="/mine"}>我的

({render: () =>

首頁

})}>
({render: () =>

文章

})}>
({render: () =>

我的

})}>
) } } let MyApp = withRouter(App) ReactDom.render( , document.getElementById("app") )

效果

說明
NavLink: Link增強(qiáng)版,如果當(dāng)前路由命中,將會啟用activeStyle或者activeClassName。

- activeStyle:?Object: 當(dāng)鏈接激活的時候的樣式
- activeClassName:?String: 當(dāng)鏈接激活的時候的樣式類
- isActive?Function: 可以手動判斷該鏈接是否激活,該函數(shù)的簽名是:function(match, location):boolean
0x003 重定向

源碼

import {BrowserRouter, Switch, Route, NavLink, Redirect, withRouter} from "react-router-dom"

class App extends React.Component {
    render() {
        return (
            
首頁 文章 我的

({render: () =>

首頁

})}>
({render: () =>

文章

})}>
({render: () =>

我的

})}>
) } } ```

效果
當(dāng)我們訪問http://localhost:8081/時,會自動跳轉(zhuǎn)到http://localhost:8081/index

0x004 沒找到匹配的路由

源碼

import {BrowserRouter, Switch, Route, NavLink, withRouter} from "react-router-dom"

class App extends React.Component {
    render() {
        return (
            
首頁 文章 我的

({render: () =>

首頁

})}>
({render: () =>

文章

})}>
({render: () =>

我的

})}>
({render: () =>

未找到這個頁面

})}/>
) } }

效果

0x005 url傳參

源碼

import {BrowserRouter, Switch, Route, NavLink, withRouter} from "react-router-dom"

class Article extends React.Component{
    render(){
        return(

{this.props.match.params.id}

) } } class App extends React.Component { render() { return (
首頁 文章1 文章2 我的

({render: () =>

首頁

})}>
({render: () =>

我的

})}>
) } }

效果

說明
聲明Route的時候使用:${name}表示要作為動態(tài)參數(shù),之后可以通過this.props.match.params.${name}獲取

0x006 頁面手動跳轉(zhuǎn)并傳參

源碼

class Article extends React.Component{
    render(){
        console.log(this)
        return(

文章 id:{this.props.location.state.id}

) } } class App extends React.Component { render() { return (

) } }

效果

說明:

跳轉(zhuǎn):this.props.history.push(path:String,data:?Object)

獲取參數(shù):this.props.location.state

0x007 何時使用Switch

做個試驗,假設(shè)我們有兩個路由:

class App extends React.Component {
    render() {
        return (
            

article

}>

:name

}>
) } }

此時看效果

會發(fā)現(xiàn)兩個都命中了,這個時候可以使用Switch,他只會命中第一個命中的路由

class App extends React.Component {
    render() {
        return (
            

article

}>

:name

}>
) } }

命中/article

命中/:name

0x008 資源

源碼

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://m.hztianpu.com/yun/98217.html

相關(guān)文章

  • Router入門0x201: 從 URL 到 SPA

    摘要:的全稱是統(tǒng)一資源定位符英文,可以這么說,是一種標(biāo)準(zhǔn),而網(wǎng)址則是符合標(biāo)準(zhǔn)的一種實(shí)現(xiàn)而已。渲染器,將組件渲染到頁面上。 0x000 概述 從這一章開始就進(jìn)入路由章節(jié)了,并不直接從如何使用react-route來講,而是從路由的概念和實(shí)現(xiàn)來講,達(dá)到知道路由的本質(zhì),而不是只知道如何使用react-route庫的目的,畢竟react-route只是一個庫,是路由的一個實(shí)現(xiàn)而已,而不是路由本身。 ...

    honmaple 評論0 收藏0
  • Router入門0x203: react、react-route、react-route-dom

    摘要:概述上一章使用的是自己實(shí)現(xiàn)的,當(dāng)然已經(jīng)有現(xiàn)成的庫給我們用了,那就是??偨Y(jié)看透它,然后掌握它資源源碼 0x000 概述 上一章使用的是自己實(shí)現(xiàn)的route,當(dāng)然已經(jīng)有現(xiàn)成的庫給我們用了,那就是react-route。 0x001 history Api說明 在說這個庫之前,得先對history新的api做一個了解 window.history.pushState(data,title...

    luxixing 評論0 收藏0
  • Router入門0x205: react-route + redux + react 集成

    摘要:概述這一章終于大集成了集成源碼效果說明集成主要是用到庫集成源碼效果說明主要用到庫,是針對庫在環(huán)境下的封裝組件,注入等屬性接管跟組件指定路由和組件的對應(yīng)關(guān)系集成源碼引入相關(guān)的包和鏈接組件效果說明主要用到庫都是用的接 0x000 概述 這一章終于大集成了 0x001 集成react 源碼 import React from react import ReactDom from rea...

    yiliang 評論0 收藏0
  • react、react-router、redux 也許是最佳小實(shí)踐1

    摘要:通過聲明式編程模型定義組件,是最強(qiáng)大的核心功能。無論是的瀏覽器書簽,還是的導(dǎo)航功能,只要是可以使用的地方,就可以使用。二級路由使用渲染組件屬性狀態(tài)請選擇一個主題。也許是最佳小實(shí)踐地址,覺得有幫助的話,請點(diǎn)擊一下,嘿嘿 小前言 這是一個小小的有關(guān)react的小例子,希望通過一個小例子,可以讓新手更好的了解到react、react-router4.0、redux的集中使用方法。 這是基...

    Betta 評論0 收藏0

發(fā)表評論

0條評論

閱讀需要支付1元查看
<