網(wǎng)站首頁 編程語言 正文
react調(diào)用MATERIAL-UI的組件中使用componentWillReceiveProps或shouldComponentUpdate報錯Missing semicolon.
作者:LangForOne 更新時間: 2023-10-27 編程語言在學(xué)習(xí)react做小項目時遇到的bug,調(diào)用MATERIAL-UI的警告彈出框組件時使用componentWillReceiveProps報了如下錯誤:
起因是想讓props里的id發(fā)生變化時更新localStorage里的‘id’。
報錯的missing?semicolon的字面意思是“丟失分號”,但標(biāo)點符號我都寫對了,錯誤顯然沒有這么簡單。
后來發(fā)現(xiàn)MATERIAL-UI里的組件都是Function Component,也就是函數(shù)式組件,而函數(shù)式組件是沒有生命周期的,故不能使用類組件的更新期生命周期函數(shù)?componentWillReceiveProps。
解決辦法:用useEffect來代替componentWillReceiveProps實現(xiàn)監(jiān)聽更新
①、在組件的頭部引入useEffect
import React, {useEffect} from 'react'
?②、調(diào)用useEffect,第一個參數(shù)為當(dāng)監(jiān)聽的對象發(fā)生更新改變時所執(zhí)行的函數(shù);第二個參數(shù)是數(shù)組,數(shù)組內(nèi)部的元素則為需要監(jiān)聽的對象。
useEffect(()=>{
if (localStorage.getItem('item') === null) {
setItem(0);
} else {
setItem(localStorage.getItem('item'));
}
}, [props.item])
這樣就能在函數(shù)式組件中實現(xiàn)生命周期的更新期啦
原文鏈接:https://blog.csdn.net/vvv3171071/article/details/119461001
- 上一篇:沒有了
- 下一篇:沒有了
相關(guān)推薦
- 2022-06-17 使用Python解決常見格式圖像讀取nii,dicom,mhd_python
- 2024-02-26 啟動zabbix服務(wù)報“./zabbix_agentd: cannot execute binary
- 2022-08-29 如何用python將單引號替換為雙引號_python
- 2022-05-04 使用Spring.Net框架實現(xiàn)多數(shù)據(jù)庫_實用技巧
- 2023-03-25 Pandas快速合并多張excel表格的兩種方法_python
- 2022-12-10 Qt界面中滑動條的實現(xiàn)方式_C 語言
- 2022-06-16 react?可拖拽進(jìn)度條的實現(xiàn)_React
- 2023-03-21 C#中[]的幾種用法示例代碼_C#教程
- 欄目分類
-
- 最近更新
-
- window11 系統(tǒng)安裝 yarn
- 超詳細(xì)win安裝深度學(xué)習(xí)環(huán)境2025年最新版(
- Linux 中運行的top命令 怎么退出?
- MySQL 中decimal 的用法? 存儲小
- get 、set 、toString 方法的使
- @Resource和 @Autowired注解
- Java基礎(chǔ)操作-- 運算符,流程控制 Flo
- 1. Int 和Integer 的區(qū)別,Jav
- spring @retryable不生效的一種
- Spring Security之認(rèn)證信息的處理
- Spring Security之認(rèn)證過濾器
- Spring Security概述快速入門
- Spring Security之配置體系
- 【SpringBoot】SpringCache
- Spring Security之基于方法配置權(quán)
- redisson分布式鎖中waittime的設(shè)
- maven:解決release錯誤:Artif
- restTemplate使用總結(jié)
- Spring Security之安全異常處理
- MybatisPlus優(yōu)雅實現(xiàn)加密?
- Spring ioc容器與Bean的生命周期。
- 【探索SpringCloud】服務(wù)發(fā)現(xiàn)-Nac
- Spring Security之基于HttpR
- Redis 底層數(shù)據(jù)結(jié)構(gòu)-簡單動態(tài)字符串(SD
- arthas操作spring被代理目標(biāo)對象命令
- Spring中的單例模式應(yīng)用詳解
- 聊聊消息隊列,發(fā)送消息的4種方式
- bootspring第三方資源配置管理
- GIT同步修改后的遠(yuǎn)程分支