建立乙個.jsx檔案
import react from
'react'
export
default
class
myinput
extends
react.component
}render()
} value=
/>
<
/div>
}}
匯入.jsx檔案,並渲染到頁面上
import react from
'react'
import reactdom from
'react-dom'
import myinput from
'.jsx檔案路徑'
reactdom.
render
(<
/myinput>
<
/div>
,document.
getelementbyid()
)
這時,this.state.msg只是單向的從myinput元件例項的this.state渲染到頁面中,頁面中不能進行修改
通過箭頭函式的引數獲取資料
.jsx檔案
import react from
'react'
export
default
class
myinput
extends
react.component
}render()
} value=
onchange=
/>
<
/div>
}inputchange
(e))
}}
箭頭函式的引數是乙個event,是觸發這個函式的元素,而我們想得到的標籤就在這個元素下的target中
2. 通過ref獲取資料
.jsx檔案
import react from
'react'
export
default
class
myinput
extends
react.component
}render()
} value=
onchange=
ref=
"txt"
/>
<
/div>
}inputchange
(e))
}
加了ref的元素,相當於加了乙個id,react內部有乙個refs物件存放了這些加了ref的元素的指向
總結:
react會自動的做從例項中的資料向頁面中進行渲染,但不會將頁面中的資料的修改同步到例項的資料中,想要實現資料的雙向繫結,就需要我們來做從頁面到例項中的資料這個方向的處理。還是vue方便
1120 MVVM框架是如何實現雙向資料繫結剖析。
思路 1.model影響檢視 編譯時註冊watcher,在註冊watcher,呼叫get,通過observer資料劫持get方法,將多個觀察者統一管理起來。當改變資料時,呼叫set方法,將收攏的對應觀察者的upadte方法更新。2.檢視影響model 編譯時註冊wather,node節點繫結對應的事...
react 表單 雙向繫結的實現
在 react 開發中,經常遇到 input 輸入框改變值的時候,要定義乙個函式,該函式內部執行 setstate 的操作,才能改變 input 的值。如果表單元素多了以後,就會定義很多的這種函式,使 變得冗餘。下面在 react 中實現乙個類似於 vue 的表單雙向繫結的邏輯。this state...
react如何實現乙個基本的資料雙向繫結
首先react本身並不像vue一樣具有雙向資料繫結這個概念,react只是mv,也就是資料層可以影響檢視層,那麼如果想要用react實現雙向資料繫結應該怎麼去實現呢?首先定義乙個子元件 import react,from react 引入react class todolist extends co...