ReactHooks批量更新state及獲取路由參數(shù)示例解析
一、如何批量更新
在【Hooks】中如果單獨的進行狀態(tài)的更新可能會導致頁面的多次渲染:
import { useState } from 'react';
import { unstable_batchedUpdates } from 'react-dom';//批量更新狀態(tài)時使用
import React from 'react';
const Example = () => {
const [count, setCount] = useState(0);
const [count1, setCount1] = useState(0);
const [isClick, setCount2] = useState(0);
setTimeout(function () {
setCount(1)
setCount1(1)
setCount2(1)
}, 1000);
console.log('渲染了')
return (
<span>請查看控制臺輸出!</span>
);
}
export default Example;
控制臺輸出
渲染了
渲染了
渲染了
渲染了
渲染了
所以需要使用批量更新來避免這個問題!
class中是通過setState來實現(xiàn)的
hooks則可以通過unstable_batchedUpdates來實現(xiàn)
import { useState } from 'react';
import { unstable_batchedUpdates } from 'react-dom';//批量更新狀態(tài)時使用
import React from 'react';
const Example = () => {
const [count, setCount] = useState(0);
const [count1, setCount1] = useState(0);
const [isClick, setCount2] = useState(0);
setTimeout(function () {
unstable_batchedUpdates(() => {
setCount(1)
setCount1(1)
setCount2(1)
})
// 這里就是處理的事件
}, 1000);
console.log('渲染了')
return (
<span>請查看控制臺輸出!</span>
);
}
export default Example;
控制臺輸出
渲染了
渲染了
二、Hooks如何獲取路由參數(shù)
有時候我們會在route中指定參數(shù),這樣就可以直接通過URL進行組件的傳參了
<Route path="/test/:name" component={Statistics} />
在Class中通過this.props.match.params可以獲取url的參數(shù)
如果是Hooks的話,可以這樣獲取:
import { useState } from 'react';
import React from 'react';
const Example = ({ match }) => {
const [name] = useState(match.params.name);
return (
<p>名稱為:<span style={{ fontWeight: 600 }}>{name}</span></p>
);
}
export default Example;
match.params就是路由中的參數(shù)
執(zhí)行效果

以上就是ReactHooks批量更新state及獲取路由參數(shù)示例解析的詳細內(nèi)容,更多關(guān)于ReactHooks批量更新state及獲取路由參數(shù)的資料請關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
一篇文章教你用React實現(xiàn)菜譜系統(tǒng)
本篇文章主要介紹了React實現(xiàn)菜譜軟件的實現(xiàn),小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2021-09-09
react.js實現(xiàn)頁面登錄跳轉(zhuǎn)示例
本文主要介紹了react.js實現(xiàn)頁面登錄跳轉(zhuǎn)示例,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2023-01-01
react 通過后端接口實現(xiàn)路由授權(quán)的示例代碼
本文主要介紹了React應用中通過后端接口獲取路由授權(quán),實現(xiàn)動態(tài)和靈活的權(quán)限管理,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2024-11-11
react自適應布局px轉(zhuǎn)rem實現(xiàn)示例詳解
這篇文章主要為大家介紹了react自適應布局px轉(zhuǎn)rem實現(xiàn)示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2023-08-08
使用react-beautiful-dnd實現(xiàn)列表間拖拽踩坑
相比于react-dnd,react-beautiful-dnd更適用于列表之間拖拽的場景,本文主要介紹了使用react-beautiful-dnd實現(xiàn)列表間拖拽踩坑,感興趣的可以了解一下2021-05-05

