#yyds干货盘点# react笔记之学习之state组件

简介: #yyds干货盘点# react笔记之学习之state组件

前言

我是歌谣 我有个兄弟 巅峰的时候排名c站总榜19 叫前端小歌谣 曾经我花了三年的时间创作了他 现在我要用五年的时间超越他 今天又是接近兄弟的一天人生难免坎坷 大不了从头再来 歌谣的意志是永恒的 放弃很容易 但是坚持一定很酷 微信公众号前端小歌谣 关注公众号带你进入前端学习交流群

state简介

import './App.css';
import {useState} from "react";
const App = () => {
  console.log('函数执行了 ---> 组件创建完毕!');
  /*
  * 在React中,当组件渲染完毕后,再修改组件中的变量,不会使组件重新渲染
  *   要使得组件可以收到变量的影响,必须在变量修改后对组件进行重新渲染
  *   这里我们就需要一个特殊变量,当这个变量被修改使,组件会自动重新渲染
  *
  * state相当于一个变量,
  *   只是这个变量在React中进行了注册,
  *   React会监控这个变量的变化,当state发生变化时,会自动触发组件的重新渲染
  *   使得我们的修改可以在页面中呈现出来
  *
  * 在函数组件中,我们需要通过钩子函数,获取state
  *
  * 使用钩子 useState() 来创建state
  *   import {useState} from "react";
  *
  * 它需要一个值作为参数,这个值就是state的初始值
  *   该函数会返回一个数组
  *     数组中第一个元素,是初始值
  *       - 初始值只用来显示数据,直接修改不会触发组件的重新渲染
  *     数组中的第二个元素,是一个函数,通常会命名为setXxx
  *       - 这个函数用来修改state,调用其修改state后会触发组件的重新渲染,
  *           并且使用函数中的值作为新的state值
  *
  *
  *
  *
  * */
  const [counter, setCounter] = useState(1);
  // let counter = result[0];
  // let setCounter = result[1];
  // const [counter, setCounter] = result;
  /*
  *   当点击+时,数字增大
  *   点击-时,数字减少
  * */
  // 创建一个变量存储数字
  // let counter = 2;
  const addHandler = () => {
    // 点击后数字+1
    // alert('+1');
    // counter++;
    setCounter(counter + 1); // 将counter值修改为2
  };
  const lessHandler = () => {
    // 点击后数字-1
    // alert('-1');
    // counter--;
    setCounter(counter-1);
  };
  return <div className={'app'}>
    <h1>{counter}</h1>
    <button onClick={lessHandler}>-</button>
    <button onClick={addHandler}>+</button>
  </div>;
};
// 导出App
export default App;

样式文件

.app{
    width: 300px;
    height: 300px;
    margin: 50px auto;
    background-color: #bfa;
    text-align: center;
}
.app button{
    width: 100px;
    font-size: 50px;
    margin: 0 20px;
}

相关文章
|
开发框架 前端开发 JavaScript
从零开始学习React Native开发
React Native是一种基于React框架的移动端开发框架,使用它可以快速地构建出高性能、原生的移动应用。本文将从零开始,介绍React Native的基础知识和开发流程,帮助读者快速入门React Native开发,并实现一个简单的ToDo应用程序。
|
前端开发 JavaScript Java
React 速通笔记
【7月更文挑战第17天】
254 1
|
JavaScript 前端开发 API
如何学习React.js?
【5月更文挑战第27天】如何学习React.js?
319 14
|
前端开发 JavaScript UED
React 基础与实践 | 青训营笔记
React 基础与实践 | 青训营笔记
152 0
|
运维 JavaScript 前端开发
发现了一款宝藏学习项目,包含了Web全栈的知识体系,JS、Vue、React知识就靠它了!
发现了一款宝藏学习项目,包含了Web全栈的知识体系,JS、Vue、React知识就靠它了!
362 2
react+typescript给state和props定义指定类型
react+typescript给state和props定义指定类型
257 1
|
存储 前端开发 中间件
React组件间的通信
React组件间的通信
211 1
|
存储 前端开发 JavaScript
从零开始学习React Native开发
【2月更文挑战第1天】React Native是一种跨平台的移动应用程序框架,可以使用JavaScript和React来构建Android和iOS应用程序。本文将带您从零开始学习React Native开发,涵盖了基础知识、组件、样式、布局、API等方面。
|
前端开发 应用服务中间件 数据库
react服务端组件
react服务端组件
150 0
|
前端开发 JavaScript
快速上手React:从概述到组件与事件处理
快速上手React:从概述到组件与事件处理