小白学react之Next.js 14(三)React.useState

首先,你需要确保引入了 ReactuseState

javascript 复制代码
import React, { useState } from 'react';

然后我们来定义:

javascript 复制代码
const App = () => {const [data, setData] = React.useState<Array<Employee>>([]);
    const [editID, setEditID] = React.useState<number | null>(null);
}

const [data, setData] = React.useState<Array<Employee>>([]);声明了一个状态变量 data,这个状态变量的类型是一个 Employee 对象的数组。更新这个状态的函数 setdata。data的初始值为一个空的Employee数组。

const [editID, setEditID] = React.useState<number | null>(null);声明了一个状态变量 editID,这个状态变量的类型是一个number 。更新这个状态的函数 setEditID。editID的初始值是null。

我们把它定义在app中,这样,整个app都能使用useState定义的变量,而且可以在app的任何地方使用setEditID和setData更改data和editID的值。

注意:useState 创建的状态仅在组件实例中存在。所以,当你重新加载页面,或者卸载并重新挂载组件时,状态会重置为初始值。

相关推荐
孤水寒月3 小时前
基于HTML的悬窗可拖动记事本
前端·css·html
祝余呀3 小时前
html初学者第一天
前端·html
脑袋大大的4 小时前
JavaScript 性能优化实战:减少 DOM 操作引发的重排与重绘
开发语言·javascript·性能优化
速易达网络6 小时前
RuoYi、Vue CLI 和 uni-app 结合构建跨端全家桶方案
javascript·vue.js·低代码
耶啵奶膘6 小时前
uniapp+firstUI——上传视频组件fui-upload-video
前端·javascript·uni-app
JoJo_Way6 小时前
LeetCode三数之和-js题解
javascript·算法·leetcode
视频砖家6 小时前
移动端Html5播放器按钮变小的问题解决方法
前端·javascript·viewport功能
lyj1689977 小时前
vue-i18n+vscode+vue 多语言使用
前端·vue.js·vscode
小白变怪兽8 小时前
一、react18+项目初始化(vite)
前端·react.js
ai小鬼头8 小时前
AIStarter如何快速部署Stable Diffusion?**新手也能轻松上手的AI绘图
前端·后端·github