第2章:組件三大核心屬性3: refs與事件處理

2****.4.2. 理解

組件內(nèi)的標(biāo)簽可以定義ref屬性來標(biāo)識(shí)自己

2.4.3. 編碼

  1. 字符串形式的ref
  1. 回調(diào)形式的ref
  1. createRef創(chuàng)建ref容器·

2.4.4. 事件處理

1.通過onXxx屬性指定事件處理函數(shù)(注意大小寫)

1)React使用的是自定義(合成)事件, 而不是使用的原生DOM事件
2)React中的事件是通過事件委托方式處理的(委托給組件最外層的元素)

2.通過event.target得到發(fā)生事件的DOM元素對(duì)象

編碼

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>4_createRef.html</title>
</head>
<body>

    <!-- 準(zhǔn)備好一個(gè)容器 -->
    <div id="test"></div>

    <!--  引入react核心庫(kù) -->
    <script type="text/javascript" src="../js/react.development.js"></script>
    <!-- 引入react-dom,用于支持react操作DOM -->
    <script type="text/javascript" src="../js/react-dom.development.js"></script>
    <!-- 引入babe1,用于將jsx轉(zhuǎn)為js -->
    <script type="text/javascript" src="../js/babel.min.js"></script>
    
    <script type="text/babel">/* 此處一定要寫babel */
        // 創(chuàng)建組件
        class Demo extends React.Component{
            /**
             * React.createRef()調(diào)用后可以返回一個(gè)容器,該容器可以存儲(chǔ)被ref所標(biāo)識(shí)的節(jié)點(diǎn),該容器是專人專用的
             */
            myRef=React.createRef();
            myRef2 = React.createRef();
            showData = ()=>{
               
               alert(this.myRef.current.value);
               
            }
            showData2 = ()=>{
               
                alert(this.myRef2.current.value);
            }
           
            render(){
                
                return (
                    <div>
                        <input ref={this.myRef} type="text" placeholder='點(diǎn)擊按鈕提示數(shù)據(jù)'/>&nbsp;
                        <button onClick={this.showData}>點(diǎn)我提示左側(cè)數(shù)據(jù)</button>&nbsp;
                        <input ref={this.myRef2} onBlur={this.showData2} type="text" placeholder='失去焦點(diǎn)提示數(shù)據(jù)'/>&nbsp;
                    </div>
                )
            }
        }
        // 渲染組件到頁面
        ReactDOM.render(<Demo/>,document.getElementById('test'));

    </script>
</body>
</html>
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容