iT邦幫忙

2021 iThome 鐵人賽

DAY 26
0
自我挑戰組

從零開始學習React 系列 第 26

Day26 React Router useLocation

useLocation 函數是當 URL 網址改變時useState()會返回一個新的包含有關目前URL的狀態和位置的物件函數。每當URL網址有變更,則 useLocation 資訊也將更新。

延續昨天的實作,加入了useLocation(),在網頁中加了{location.pathname}可以顯示出目前URL網圵列的資訊,當URL網址中的參數有變更時,網頁中的locationpath資訊也會隨著變更,另外再加上一個判別式,如果locationPath中的參數和URL網圵列上所輸入的參數一致就會跳出Alert視窗。

https://ithelp.ithome.com.tw/upload/images/20211011/20139800c1wAJ6lTZx.png

step1:先導入'react-router-dom'

import { useLocation } from 'react-router-dom';

step2:將useLocation();指定給變數location,然後就可用location.pathname顯示出URL的數據

User.jsx

import React from 'react';
import { useParams,useLocation } from 'react-router-dom';



const User = () => {

    const {name , Jeff} = useParams();
    const location = useLocation();    

    return (
        <div>
            <h1>This is {name} {Jeff} Page</h1>
            <p>This is current location : " {location.pathname} "</p>
            {location.pathname ===`/user/name/Jeff` ? (
                alert("The Urlpath is correct")
                ) : null }
        </div>
    )
};


export default User;


上一篇
Day25 React Router useParams
下一篇
Day27 Router useParams 小實作
系列文
從零開始學習React 30

尚未有邦友留言

立即登入留言