詳解react中的state的簡(jiǎn)寫方式
前言
什么是state
我們都說(shuō)React是一個(gè)狀態(tài)機(jī),體現(xiàn)是什么地方呢,就是體現(xiàn)在state上,通過(guò)與用戶的交互,實(shí)現(xiàn)不同的狀態(tài),然后去渲染UI,這樣就讓用戶的數(shù)據(jù)和界面保持一致了。state是組件的私有屬性。
在React中,更新組件的state,結(jié)果就會(huì)重新渲染用戶界面(不需要操作DOM),一句話就是說(shuō),用戶的界面會(huì)隨著狀態(tài)的改變而改變。
PS: state 只能在本組件中去初始化,并且 state 只能被本組件去修改和仿問(wèn),不能被外部仿問(wèn)和修改,所以也可以說(shuō),state 是組件私有的。
下面介紹下react的state的簡(jiǎn)寫方式吧。
state是react中用來(lái)初始化的。this.state 應(yīng)該被視為一個(gè)組件的私有屬性,我們的react的state的寫法方式式有兩種的一種是我們?cè)诠倬W(wǎng)上看到的用constructor(構(gòu)造器)
constructor(props) {
super(props);
this.state = {
value: null,
};
}
但是在類組件中在使用state時(shí) 類會(huì)繼承了React.Component
class Appt extends React.Component{
//我們定義在這里的state就和上面的方法是一樣的
// 類中可以直接寫賦值語(yǔ)句
state={aff:1}
render(){
console.log(this);
//這個(gè)this就繼承了React.Component
// 這里的this是當(dāng)前組件的實(shí)例對(duì)象
return (
<div>
123
</div>
)
}
}
ReactDOM.render(
<Appt/>,
document.getElementById('app')
)
相信大家都想看看這個(gè)this打印的是何物 不急向下看

這個(gè)是我們的簡(jiǎn)寫的state的打印this的結(jié)果我們接著看我們官網(wǎng)的方式打印的this的結(jié)果,
class Appt extends React.Component{
constructor(props) {
super(props)
console.log(this,11);
// 這個(gè)是我們正常的一個(gè)初始化state的方法
this.state={
num: 456
}
}
render(){
return (
<div>
123
</div>
)
}
}
ReactDOM.render(
<Appt/>,
document.getElementById('app')
)
打印結(jié)果是兩種方式效果是一樣的

State: 總結(jié)
state 是組件對(duì)象最重要的屬性. 值是對(duì)象(可以包含多個(gè)key-value 的組合)
到此這篇關(guān)于react的state的簡(jiǎn)寫方式的文章就介紹到這了,更多相關(guān)react的state內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
在React項(xiàng)目中使用Eslint代碼檢查工具及常見(jiàn)問(wèn)題
這篇文章主要介紹了在React項(xiàng)目中使用Eslint代碼檢查工具及常見(jiàn)問(wèn)題,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2018-10-10
React?中如何將CSS?visibility?屬性設(shè)置為?hidden
這篇文章主要介紹了React中如何將CSS?visibility屬性設(shè)置為?hidden,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2023-05-05
React Native react-navigation 導(dǎo)航使用詳解
本篇文章主要介紹了React Native react-navigation 導(dǎo)航使用詳解,詳解的介紹了react-navigation導(dǎo)航的使用,具有一定的參考價(jià)值,有興趣的可以了解一下2017-12-12
react中使用heatmap.js實(shí)現(xiàn)熱力圖的繪制
heatmap.js?是一個(gè)用于生成熱力圖的?JavaScript?庫(kù),React?是一個(gè)流行的?JavaScript?庫(kù),用于構(gòu)建用戶界面,本小編給大家介紹了在React?應(yīng)用程序中使用heatmap.js實(shí)現(xiàn)熱力圖的繪制的示例,文中通過(guò)代碼示例介紹的非常詳細(xì),需要的朋友可以參考下2023-12-12

