-
React特點:聲明式的寫法,組件化,一次學習隨處編寫。
查看全部 -
npm install create-react-app -g
查看全部 -
3.4的表單記得重新看哦查看全部
-
forms表單
表單元素和其他DOM元素的區(qū)別
controlled components-受控組件
這里不知道為什么會有受控組件這一說法,直接交給state控制不就好了嘛,不寫onChange方法,為什么就是readonly了
查看全部 -
React.Componet父類里預設了幾個方法,比如
componentDidMount組件加載完成之后執(zhí)行
componentWillUnmount組件將要銷毀之前
子類可以覆寫這些方法,這個已經(jīng)完全實現(xiàn)了java語言的繼承多態(tài)的概念,再也不用通過原型的方法去實現(xiàn)js的繼承關系了
查看全部 -
生命周期
組件初始化
組件更新
組件卸載
查看全部 -
state(狀態(tài))
組件內部的數(shù)據(jù)可以動態(tài)改變
this.setState()是更新state的唯一途徑
constructor
需要顯式調用super()
方法直接在類中定義,不需要像vue中定義在methods中
方法中的this默認指向是null,可以再構造其中進行綁定
也可以使用箭頭函數(shù)(=>)
查看全部 -
props
組件像一個函數(shù)一樣,接受特定的輸入(props),產(chǎn)出特定的輸出(React elements)
V = f(props)
遇到一個錯誤
Uncaught TypeError: Super expression must either be null or a function, not undefined
因為Component的首字母小寫了
查看全部 -
BABEL轉換es6為不支持es6的js
自定義component,第一個字母要大寫,為了react可以識別
ReactDOM.render就是通過特定的算法,將jsx渲染到真實的節(jié)點上
總結:jsx是一種語法糖,它替代了React.createElement(0
查看全部 -
return?<h1>hello?react</h1>
返回的事jsx,既不是js也不是html
jsx的屬性className=class;htmlFor=for,為了防止和es6的關鍵字沖突
查看全部 -
webpack
es6語法
ReactDOM.render(<Welcome/>, document.getElementById('root'))
查看全部 -
切換到項目目錄
npm start
瀏覽器會自動打開localhost;3000.
查看全部 -
安裝react腳手架
npm install create-react-app -g
通過命令創(chuàng)建react項目
create -react-app my-project
查看全部 -
生命周期11
查看全部 -
生命周期1
查看全部
舉報