日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

React之回调ref中回调执行次数的问题

發布時間:2024/9/27 编程问答 31 豆豆
生活随笔 收集整理的這篇文章主要介紹了 React之回调ref中回调执行次数的问题 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

<!DOCTYPE html>

<html>

<head>

? ? <meat charset="UTF-8">

? ? ? ? <title>3_回調ref中回調執行次數的問題</title>

</head>

<body>

? ? <!-- 準備好一個容器 -->

? ? <div id="test"></div>

? ? <!-- 核心庫 -->

? ? <script type="text/javascript" src="../js/react.development.js"></script>

? ? <!-- react-dom,操作dom -->

? ? <script type="text/javascript" src="../js/react-dom.development.js"></script>

? ? <!-- 引入babel,jsx轉為js -->

? ? <script type="text/javascript" src="../js/babel.min.js"></script>

? ? <!-- 此處一定要寫babel -->

? ? <script type="text/babel">

? ? ? ? //1.創建組件

? ? ? ? class Demo extends React.Component{

? ? ? ? ? ? state = {isHot:true}

? ? ? ? ? ? showInfo = ()=>{

? ? ? ? ? ? ? ? const {input1} = this

? ? ? ? ? ? ? ? alert(input1.value)

? ? ? ? ? ? }

? ? ? ? ? ?

? ? ? ? ? ? changeWeather = ()=>{

? ? ? ? ? ? ? ? //獲取原來的狀態

? ? ? ? ? ? ? ? const {isHot} = this.state

? ? ? ? ? ? ? ? //更新狀態

? ? ? ? ? ? ? ? this.setState({isHot:!isHot})

? ? ? ? ? ? } ?

? ? ? ? ? ? saveInput = (c) =>{

? ? ? ? ? ? ? ? this.input1 = c;

? ? ? ? ? ? ? ? console.log('@', c); ? ? ? ? ? ? ? ?

? ? ? ? ? ? } ? ? ?

? ? ? ? ? ?render(){ ?

? ? ? ? ? ? ? ?const {isHot} = this.state

? ? ? ? ? ? ? ?return(

? ? ? ? ? ? ? ? ?<div>

? ? ? ? ? ? ? ? ? ? <h2>今天天氣很{isHot ? '炎熱' : '冰爽'}</h2>

? ? ? ? ? ? ? ? ? ? ?{/* ? ? ? ? ?jsx注釋如下 ? ? ? ? */}

? ? ? ? ? ? ? ? ?{/*<input ref={(c)=>{this.input1=c;console.log('@',c);}} type="text"></input><br/>*/}

? ? ? ? ? ? ? ? ? ? <input ref={this.saveInput} type="text"></input><br />

? ? ? ? ? ? ? ? ? ? <button onClick={this.showInfo}>點我提示輸入的數據</button>

? ? ? ? ? ? ? ? ? ? <button onClick={this.changeWeather}>點我切換天氣</button>

? ? ? ? ? ? ? ? ?</div>

? ? ? ? ? ? ? ?) ? ? ? ? ?

? ? ? ? ? ?} ? ? ? ? ?

? ? ? ? } ?

? ? ? ? //2.渲染組件到頁面

? ? ? ? ReactDOM.render(<Demo/>,document.getElementById("test")); ?

? ? </script>

</body>

</html>

=================

類聯掉調2次(? ? ? ? ? ? ? ? <input ref={(c)=>{this.input1=c;console.log('@',c);}} type="text"></input><br/>);第一次傳入參數?null,然后第二次會傳入參數 DOM 元素。這是因為在每次渲染時會創建一個新的函數實例,所以 React 清空舊的 ref 并且設置新的。

===

綁定函數不會

?

?

總結

以上是生活随笔為你收集整理的React之回调ref中回调执行次数的问题的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。