千鋒教育-做有情懷、有良心、有品質的職業教育機構

手機站
千鋒教育

千鋒學習站 | 隨時隨地免費學

千鋒教育

掃一掃進入千鋒手機站

領取全套視頻
千鋒教育

關注千鋒學習站小程序
隨時隨地免費學習課程

當前位置:首頁  >  技術干貨  > 13個React代碼片段匯總

13個React代碼片段匯總

來源:千鋒教育
發布人:wjy
時間: 2022-09-07 13:31:11 1662528671

  01、Create React App

      $ create-react-app YOUR_APP_NAME

  Create React App 是一個用于創建 React 項目的 CLI。

  02、JSX

      const element = <h1>Hello, world!</h1>;

  我們可以通過 JSX 在 JavaScript 中編寫 HTML。

13個React代碼片段匯總

  03、在 JSX 中嵌入表達式

      const name = 'Josh Perez';

      const element = <h1>Hello, {name}</h1>;

  只需使用 {} 來包裝 JavaScript 表達式。

  04、創建一個組件

  import React from 'react'

  const Hello = () => <div>Hello World</div>

  export default Hello

  它是一個簡單的、無狀態的、功能性的組件。

  05、創建類組件

  import React from 'react'

  class Hello extends React.Component {

    render() {

      return <div>Hello World</div>

    }

  }

  export default Hello

  06、將值傳遞給組件

  const User = ({name, email}) => {

      <div>

        <div> name: {name} </div>

        <div> email: {email} </div>

      </div>

  }

  export default User

  用法:

      <User name="Jon" age="35">

  07、組件嵌套

  const Child = (props) => (

    <div>{props.message}</div>

  )

 

  const Father = () => (

    return (<div>

 

      <div> I am father</div>

      <Child message="aaa"></Child>

    </div>)

 

  )

  08、向組件添加狀態

  import { useState } from "react";

 

  export default function Counter(){

      // Declare a new state variable, which we'll call "count"

    let [count, setCount] = useState(0)

 

    return <div>

 

        <p>You clicked {count} times</p>

        <button onClick={() => setCount(count + 1)}> add</button>

      </div>

  }

  09、聲明多個狀態變量

  當然,我們可以使用 useStates 定義多個狀態。

  function ManyStates() {

    // Declare multiple state variables!

    const [name, setName] = useState('');

    const [age, setAge] = useState(0);

    const [todos, setTodos] = useState([{ text: 'Eat' }]);

    // ...

  }

  10、使用效果

  import React, { useState, useEffect } from 'react';


  function Example() {

    const [count, setCount] = useState(0);


    // Similar to componentDidMount and componentDidUpdate:

    useEffect(() => {

 

      // Update the document title using the browser API

      document.title = `You clicked ${count} times`;

    });


    return (

      <div>

        <p>You clicked {count} times</p>

        <button onClick={() => setCount(count + 1)}>

 

          Click me

        </button>

      </div>

 

    );

  }

  11、處理事件

  function Form() {

    function handleSubmit(e) {

      e.preventDefault();

      console.log('You clicked submit.');

    }


    return (

      <form onSubmit={handleSubmit}>

        <button type="submit">Submit</button>

      </form>

 

    );

  }

  12、條件渲染

  function Greeting(props) {

    const isLoggedIn = props.isLoggedIn;

    if (isLoggedIn) {

      return <UserGreeting />;

    }

    return <GuestGreeting />;

  }

  用法:

  <Greeting isLoggedIn={false} />

  13、列表組件

  function NumberList(props) {

    const numbers = props.numbers;

    const listItems = numbers.map((number) =>

      <li>{number}</li>

    );

    return (

      <ul>{listItems}</ul>

    );

  }

  用法:

  <NumberList numbers={[1, 2, 3, 4, 5]} />)

tags:
聲明:本站稿件版權均屬千鋒教育所有,未經許可不得擅自轉載。
10年以上業內強師集結,手把手帶你蛻變精英
請您保持通訊暢通,專屬學習老師24小時內將與您1V1溝通
免費領取
今日已有369人領取成功
劉同學 138****2860 剛剛成功領取
王同學 131****2015 剛剛成功領取
張同學 133****4652 剛剛成功領取
李同學 135****8607 剛剛成功領取
楊同學 132****5667 剛剛成功領取
岳同學 134****6652 剛剛成功領取
梁同學 157****2950 剛剛成功領取
劉同學 189****1015 剛剛成功領取
張同學 155****4678 剛剛成功領取
鄒同學 139****2907 剛剛成功領取
董同學 138****2867 剛剛成功領取
周同學 136****3602 剛剛成功領取
相關推薦HOT
久久亚洲中文字幕精品一区四,亚洲日本另类欧美一区二区,久久久久久久这里只有免费费精品,高清国产激情视频在线观看
亚洲日本在线中文字幕dvd | 欧美国产日韩在线 | 亚洲日韩国产第一区 | 亚洲无吗大片在线观看 | 中文字幕乱在线伦视频高濑 | 亚洲国产一区二区三区在线播 |