千锋教育-做有情怀、有良心、有品质的职业教育机构

手机站
千锋教育

千锋学习站 | 随时随地免费学

千锋教育

扫一扫进入千锋手机站

领取全套视频
千锋教育

关注千锋学习站小程序
随时随地免费学习课程

当前位置:首页  >  技术干货  > 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