"小和山的菜鳥們",爲前端開發者提供技術相關資訊以及系列基礎文章。爲更好的用戶體驗,請您移至咱們官網小和山的菜鳥們 ( https://xhs-rookies.com/) 進行學習,及時獲取最新文章。
這節咱們將教你如何導入 React
並帶領你編寫出一個簡單的 React
頁面。html
本文會向你介紹如下內容:前端
React
引入方法Hello React Demo
React
開發必須依賴三個庫,分別是:react
react
:包含 react
核心代碼react-dom
:幫助 react
在各平臺渲染的核心代碼babel
:將 JSX
轉換爲 React
代碼的工具React
的這三個依賴有如下幾種方法進行引入:babel
CDN
引入,直接使用 script
標籤引入遠程的 React
核心代碼庫React
核心代碼庫,使用本地導入React
從一開始就被設計爲逐步採用,而且你能夠根據須要選擇性地使用 React。對於初學者,咱們不建議你直接使用 React
腳手架建立項目,因此在這篇教程的前幾章,咱們將使用 CDN
引入的方式,減小你對複雜操做的疑惑,先學會 React
和 JSX
語法。app
Demo 功能介紹:界面中有一個按鈕和一個文本框,當你第一次點擊按鈕,文本框會從 hello React
變成 hello xhs-rookies
。dom
<div id="app"></div>
<script src="https://unpkg.com/react@16/umd/react.development.js" crossorigin></script> <script src="https://unpkg.com/react-dom@16/umd/react-dom.development.js" crossorigin></script> <script src="https://unpkg.com/babel-standalone@6/babel.min.js"></script>
這一步將使用到後面須要學習的 JSX
語法和組件寫法,暫時你不須要理解這些代碼的含義,咱們將很快帶你學習。工具
<script type="text/babel"> class App extends React.Component { constructor() { super(); this.state = { message: 'hello React' } } render() { return ( <div> <p>{this.state.message}</p> <button onClick={() => this.setState({message: 'hello xhs-rookies'})}>點我一下</button> </div> ) } } </script>
此處的 script
標籤必定要定義 type
爲"text/babel
",這樣 babel 將會解析咱們所寫的 JSX
代碼。學習
ReactDOM.render(<App />, document.getElementById('app'))
綜上,你的代碼將變成這樣this
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <title>Title</title> </head> <body> <div id="app"></div> <script src="https://unpkg.com/react@16/umd/react.development.js"></script> <script src="https://unpkg.com/react-dom@16/umd/react-dom.development.js"></script> <script src="https://unpkg.com/babel-standalone@6/babel.min.js"></script> <script type="text/babel"> class App extends React.Component { constructor() { super() this.state = { message: 'hello React', } } render() { return ( <div> <p>{this.state.message}</p> <button onClick={() => this.setState({ message: 'hello xhs-rookies' })}> 點我一下 </button> </div> ) } } ReactDOM.render(<App />, document.getElementById('app')) </script> </body> </html>
接下來讓咱們來看看效果:spa
這是點擊前的頁面
這是點擊後的頁面
恭喜你已經完成了一個簡單的 React demo
了。