React從入門到開發(fā)

搭建程序

create-react-app my-app
cd my-app
npm start

快速創(chuàng)建React單頁面應(yīng)用

1 第一個應(yīng)用HelloWorld

// index.js
import React from 'react';
import ReactDOM from 'react-dom';

ReactDOM.render(
    <h1>Hello, world!<h1/>,
    document.getElementById('root')
);

id為root的div <div id="root"></div>
調(diào)用ReactDOM.render()將React元素渲染進(jìn)rootDOM節(jié)點中

2 自定義組件

import React from 'react';
class MyApp extends React.Component {
    render() {
        return (
            <div>
                請輸入你的郵箱:<input/>
            </div>
        );
    }
};
export  default MyApp;

// index.js
import MyApp from './MyComponents/MyApp.js';
ReactDOM.render(
    <MyApp/>,
    document.getElementById('root')
);

在這個組件代碼底部添加export default MyApp;拋出去
使用時引入這個組件import MyApp from './MyComponents/MyApp.js';

3 JSX語法

HTML語言直接寫在 JavaScript 語言之中,不加任何引號

  • JSX的基本語法規(guī)則:
    • 遇到 HTML標(biāo)簽(以 < 開頭),就用 HTML 規(guī)則解析;
    • 遇到代碼塊(以 { 開頭),就用 JavaScript 規(guī)則解析
var arr = [
    <h2>Alice</h2>,
    <h2>Michel</h2>,
    <h2>jack</h2>,
];

ReactDOM.render(
    <div>{ arr }</div>,
    document.getElementById('root')
);

直接{ arrName }插入JavaScript 變量。如果是數(shù)組,直接展開展開

4 this.props

class Hello extends React.Component {
    render() {
        return <h1>你好啊 {this.props.name}</h1>
    };
}
ReactDOM.render(
    <Hello name='junchen'/>,
    document.getElementById('root')
)
  • React.createClass在最新版已經(jīng)取消
  • 所有組件都必須有自己的 render() {###} 用于輸出
  • 組件的第一個字母必須大寫,否則會報錯
  • 組件只能包含一個頂層標(biāo)簽,否則也會報錯
    • return <h1>第一個</h1><p>第二個頂層類</p>
  • 組件的屬性可以用this.props獲取
    • 組件 class屬性需要寫成 className
    • for 屬性要寫成 htmlFor,因為它們的保留字。

5 this.state

組件作為狀態(tài)機,狀態(tài)變化觸發(fā)渲染UI

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

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

  • 以下內(nèi)容是我在學(xué)習(xí)和研究React時,對React的特性、重點和注意事項的提取、精練和總結(jié),可以做為React特性...
    科研者閱讀 8,408評論 2 21
  • GUIDS 第一章 為什么使用React? React 一個提供了用戶接口的JavaScript庫。 誕生于Fac...
    jplyue閱讀 3,704評論 1 11
  • 原教程內(nèi)容詳見精益 React 學(xué)習(xí)指南,這只是我在學(xué)習(xí)過程中的一些閱讀筆記,個人覺得該教程講解深入淺出,比目前大...
    leonaxiong閱讀 2,944評論 1 18
  • It's a common pattern in React to wrap a component in an ...
    jplyue閱讀 3,401評論 0 2
  • 最近看了《我的前半生》和《七月與安生》,對于小三是閨蜜這種事有了一點小小的想法。首先,我沒經(jīng)歷過這種事,也不會經(jīng)歷...
    王貓貓有只狗閱讀 386評論 0 1

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