React中函数式Hooks之useState的使用

简介: 本文介绍了React中函数式组件的Hooks——`useState`的使用方法。`useState`允许在函数式组件中使用状态,它返回一个数组,其中包含当前状态的值和更新该状态的函数。文章通过示例代码展示了如何声明状态变量和更新状态变量,包括对数值和对象状态的更新。此外,还展示了如何通过点击按钮触发状态更新,实现交互功能。

useState

首先不同于class组件这个组件中没有this

/*
 * @Descripttion: 
 * @version: 
 * @Author: ZhangJunQing
 * @Date: 2021-11-11 11:12:01
 * @LastEditors: ZhangJunQing
 * @LastEditTime: 2021-11-26 11:17:06
 */

function Demo() {
   
    //useState中传入的参数是默认值
    // useState 返回的是一个数组 这个数组的第一项是当前的状态 第二项是个函数 用于更新第一项的状态
    // [状态,改变状态的函数]
    let [num, setNum] = React.useState(0)
    let [zjqName, setzjqName] = React.useState({
   name:'zjq'})
    const changeNum = () => {
   
        setNum(num + 1)
    }
    const changeName =()=>{
   
        setzjqName(zjqName=>{
   
            return {
   
                ...zjqName,
                name:"hahahah"
            }
        })
    }
    return (
        <div >
            我现在的num数值是 : {
   num}
            <button onClick={
   changeNum}>点我num加1</button>
            我的名字是 : {
   zjqName.name}
            <button onClick={
   changeName}>点我改变name</button>
        </div>
    )
}

export default Demo

React.useState(0):
1.这个方法会返回一个数组,[状态,改变状态的函数];
2.这个数组的第一项是当前的状态 第二项是个函数 用于更新第一项的状态;
3.useState传入的值就是num这个变量的初始值,也就是默认值。
在这里插入图片描述
点击按钮出发changeNum方法,在这个方法中调用setNum这个方法,并将最近的num值传入进入,即完成了num这个变量状态的更新。

目录
相关文章
|
11月前
|
前端开发 JavaScript
深入探索React Hooks:从useState到useEffect
深入探索React Hooks:从useState到useEffect
|
11月前
|
前端开发
React Hooks:从基础到进阶的深入理解
React Hooks:从基础到进阶的深入理解
206 2
|
11月前
|
前端开发 JavaScript API
探究 React Hooks:如何利用全新 API 优化组件逻辑复用与状态管理
本文深入探讨React Hooks的使用方法,通过全新API优化组件逻辑复用和状态管理,提升开发效率和代码可维护性。
|
11月前
|
前端开发
深入探索React Hooks:从useState到useEffect
深入探索React Hooks:从useState到useEffect
123 3
|
11月前
|
前端开发 JavaScript
React Hooks 深入解析
React Hooks 深入解析
144 0
|
11月前
|
缓存 前端开发 开发者
深入理解React Hooks,打造高效响应式UI
深入理解React Hooks,打造高效响应式UI
152 0
|
5月前
|
缓存 前端开发 数据安全/隐私保护
如何使用组合组件和高阶组件实现复杂的 React 应用程序?
如何使用组合组件和高阶组件实现复杂的 React 应用程序?
225 68
|
5月前
|
缓存 前端开发 Java
在 React 中,组合组件和高阶组件在性能方面有何区别?
在 React 中,组合组件和高阶组件在性能方面有何区别?
208 67
|
5月前
|
前端开发 JavaScript 安全
除了高阶组件和render props,还有哪些在 React 中实现代码复用的方法?
除了高阶组件和render props,还有哪些在 React 中实现代码复用的方法?
221 62
|
7月前
|
前端开发 JavaScript
除了使用Route组件,React Router还有其他方式处理404错误页面吗
除了使用Route组件,React Router还有其他方式处理404错误页面吗
182 58