国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

在react中說說對受控組件和非受控組件的理解?以及應(yīng)用場景

這篇具有很好參考價值的文章主要介紹了在react中說說對受控組件和非受控組件的理解?以及應(yīng)用場景。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點(diǎn)擊"舉報違法"按鈕提交疑問。

回答思路:說說受控組件–>說說非受控組件–>應(yīng)用場景

受控組件:

簡單來講,就是受我們控制的組件,組件的狀態(tài)全程響應(yīng)外部數(shù)據(jù)
舉例:

class TestComponent extends React.Component{
	constructor(props){
		super(props);
		this.state = {username:'Tom'};
	}
	render(){
		return <input name="username" value={this.state.username}></input>	
	}
}

這時候當(dāng)我們在輸入框輸入內(nèi)容時,會發(fā)現(xiàn)輸入的內(nèi)容無法顯示出來,此時input標(biāo)簽是一個可讀的狀態(tài),因?yàn)関alue被this.state.username所控制,當(dāng)用戶輸入時,this.state.username不會自動更新,這樣的話input的內(nèi)容就不會發(fā)生變化了,想要解除被控制,可以為input標(biāo)簽設(shè)置onChange事件,觸發(fā)的時候更新state,從而導(dǎo)致input框內(nèi)容更新

非受控組件

簡單來講,就是不受我們控制的組件,一般情況是在初始化的時候接受外部數(shù)據(jù),然后自己在內(nèi)部存儲自身狀態(tài),當(dāng)需要時,可以使用ref查詢DOM并查找當(dāng)前值,如下:

import React,{Component} form 'react';
export class ExampleComp extedns Component{
	constructor (props){
		super(props);
		this.inputRef = React.createRef();
	}
	handleSubmit = (e) =>{
		console.log("獲取input框的值為:",this.inputRef.current.value);
		e.preventDefault();
	}
	render(){
		return (
		<form onSubmit={e => this.handleSubmit(e)}>
		<input defaultValue="Tom" ref={this.inputRef} />
		<input type="submit" value="提交" />
		</form>
	)
	}
}

應(yīng)用場景

大多數(shù)推薦使用受控組件來實(shí)現(xiàn)表單,因?yàn)槭芸亟M件表單數(shù)據(jù)由React組件負(fù)責(zé)處理,非受控組件控制能力弱,表單數(shù)據(jù)由DOM本身處理,但更加方便快捷,代碼量少文章來源地址http://www.zghlxwxcb.cn/news/detail-814169.html

特征 不受控組件 受控組件
一次性取值,如提交時
提交時驗(yàn)證
即時現(xiàn)場驗(yàn)證 ×
有條件地禁用提交按鈕 ×
強(qiáng)制輸入格式 ×
一個數(shù)據(jù)的多個輸入 ×
動態(tài)輸入 ×

到了這里,關(guān)于在react中說說對受控組件和非受控組件的理解?以及應(yīng)用場景的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請點(diǎn)擊違法舉報進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • 說說對React中類組件和函數(shù)組件的理解?有什么區(qū)別?

    通過ES6類的編寫形式去編寫組件,該類必須繼承React.Component,通過this.props的方式去訪問父組件傳遞過來的參數(shù),且在類組件中必須使用render方法,在return中返回React對象,如下: 通過函數(shù)編寫的形式去實(shí)現(xiàn)一個React組件,是React中定義組件最簡單的方式,如下: 1.編寫形式不

    2024年01月22日
    瀏覽(14)
  • 說說對WebSocket的理解?應(yīng)用場景?

    說說對WebSocket的理解?應(yīng)用場景?

    WebSocket,是一種網(wǎng)絡(luò)傳輸協(xié)議,位于 OSI 模型的應(yīng)用層??稍趩蝹€ TCP 連接上進(jìn)行全雙工通信,能更好的節(jié)省服務(wù)器資源和帶寬并達(dá)到實(shí)時通迅 客戶端和服務(wù)器只需要完成一次握手,兩者之間就可以創(chuàng)建持久性的連接,并進(jìn)行雙向數(shù)據(jù)傳輸 從上圖可見, websocket 服務(wù)器與客戶

    2024年04月08日
    瀏覽(56)
  • 說說你對棧、隊(duì)列的理解?應(yīng)用場景?

    說說你對棧、隊(duì)列的理解?應(yīng)用場景?

    棧(stack)又名堆棧,它是一種運(yùn)算受限的線性表,限定僅在表尾進(jìn)行插入和刪除操作的線性表 表尾這一端被稱為棧頂,相反地另一端被稱為棧底,向棧頂插入元素被稱為進(jìn)棧、入棧、壓棧,從棧頂刪除元素又稱作出棧 所以其按照先進(jìn)后出的原則存儲數(shù)據(jù),先進(jìn)入的數(shù)據(jù)被壓

    2024年04月11日
    瀏覽(22)
  • 說說你對堆的理解?如何實(shí)現(xiàn)?應(yīng)用場景?

    說說你對堆的理解?如何實(shí)現(xiàn)?應(yīng)用場景?

    堆(Heap)是計算機(jī)科學(xué)中一類特殊的數(shù)據(jù)結(jié)構(gòu)的統(tǒng)稱 堆通常是一個可以被看做一棵完全二叉樹的數(shù)組對象,如下圖: 總是滿足下列性質(zhì): 堆中某個結(jié)點(diǎn)的值總是不大于或不小于其父結(jié)點(diǎn)的值 堆總是一棵完全二叉樹 堆又可以分成最大堆和最小堆: 最大堆:每個根結(jié)點(diǎn),都有根

    2024年04月22日
    瀏覽(35)
  • 說說你對二分查找的理解?如何實(shí)現(xiàn)?應(yīng)用場景?

    說說你對二分查找的理解?如何實(shí)現(xiàn)?應(yīng)用場景?

    ? 在計算機(jī)科學(xué)中,二分查找算法,也稱折半搜索算法,是一種在有序數(shù)組中查找某一特定元素的搜索算法 想要應(yīng)用二分查找法,則這一堆數(shù)應(yīng)有如下特性: 存儲在數(shù)組中 有序排序 搜索過程從數(shù)組的中間元素開始,如果中間元素正好是要查找的元素,則搜索過程結(jié)束 如果

    2024年04月25日
    瀏覽(20)
  • 說說你對貪心算法、回溯算法的理解?應(yīng)用場景?

    說說你對貪心算法、回溯算法的理解?應(yīng)用場景?

    貪心算法,又稱貪婪算法,是算法設(shè)計中的一種思想 其期待每一個階段都是局部最優(yōu)的選擇,從而達(dá)到全局最優(yōu),但是結(jié)果并不一定是最優(yōu)的 舉個零錢兌換的例子,如果你有1元、2元、5元的錢幣數(shù)張,用于兌換一定的金額,但是要求兌換的錢幣張數(shù)最少 如果現(xiàn)在你要兌換

    2024年04月28日
    瀏覽(31)
  • 說說你對選擇排序的理解?如何實(shí)現(xiàn)?應(yīng)用場景?

    說說你對選擇排序的理解?如何實(shí)現(xiàn)?應(yīng)用場景?

    選擇排序(Selection sort)是一種簡單直觀的排序算法,無論什么數(shù)據(jù)進(jìn)去都是? O(n2) 的時間復(fù)雜度,所以用到它的時候,數(shù)據(jù)規(guī)模越小越好 其基本思想是:首先在未排序的數(shù)列中找到最小(or最大)元素,然后將其存放到數(shù)列的起始位置 然后再從剩余未排序的元素中繼續(xù)尋找最

    2024年04月23日
    瀏覽(21)
  • 說說你對歸并排序的理解?如何實(shí)現(xiàn)?應(yīng)用場景?

    說說你對歸并排序的理解?如何實(shí)現(xiàn)?應(yīng)用場景?

    歸并排序(Merge Sort)是建立歸并操作上的一種有效,穩(wěn)定的排序算法,該算法是采用分治法的一個非常典型的應(yīng)用 將已有序的子序列合并,得到完全有序的序列,即先使每個子序列有序,再使子序列段間有序 例如對于含有? n ?個記錄的無序表,首先默認(rèn)表中每個記錄各為一

    2024年04月24日
    瀏覽(38)
  • 說說你對vue的mixin的理解,有什么應(yīng)用場景?

    說說你對vue的mixin的理解,有什么應(yīng)用場景?

    Mixin 是面向?qū)ο蟪绦蛟O(shè)計語言中的類,提供了方法的實(shí)現(xiàn)。其他類可以訪問 mixin 類的方法而不必成為其子類 Mixin 類通常作為功能模塊使用,在需要該功能時“混入”,有利于代碼復(fù)用又避免了多繼承的復(fù)雜 先來看一下官方定義 mixin (混入),提供了一種非常靈活的方式,來

    2024年03月09日
    瀏覽(30)
  • React從入門到實(shí)戰(zhàn)-事件處理,受控組件與非受控組件

    事件處理 通過onXxx屬性指定事件處理函數(shù)(注意大小寫) React使用的是自定義(合成)事件,而不是使用的原生DOM事件——為了更好的兼容性 React中的事件是通過事件委托方式處理的(委托給組件最外層的元素——為了更高效 通過event.target得到發(fā)生事件的DOM元素對象 收集表

    2024年02月12日
    瀏覽(55)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包