react useState ts定义类型

在 React 中使用 useState 时,如果你在 TypeScript 里想为 useState 明确指定状态的类型,可以这样做:

1. 基础类型

比如,声明一个数字类型的 state:

tsx 复制代码
import React, { useState } from "react";

const Example: React.FC = () => {
  // 方式一:类型自动推断
  // const [count, setCount] = useState(0);

  // 方式二:显式指定类型
  const [count, setCount] = useState<number>(0);

  return (
    <div>
      <button onClick={() => setCount(count + 1)}>点击: {count}</button>
    </div>
  );
};

export default Example;

2. 对象类型

当 state 是对象时:

tsx 复制代码
type User = {
  name: string;
  age: number;
};

const [user, setUser] = useState<User>({ name: "张三", age: 18 });

3. 数组类型

tsx 复制代码
const [list, setList] = useState<string[]>([]);

4. 联合类型或可为空

如果 state 可能为 null,需要加上 null

tsx 复制代码
const [data, setData] = useState<string | null>(null);

总的语法形式:

tsx 复制代码
const [state, setState] = useState<类型>(初始值);

如果有具体的类型定义问题,可以把你的实际代码发出来帮你更详细解答!

相关推荐
37方寸11 小时前
前端基础知识(Node.js)
前端·node.js
早點睡39012 小时前
基础入门 React Native 鸿蒙跨平台开发:react-native-flash-message 消息提示三方库适配
react native·react.js·harmonyos
powerfulhell12 小时前
寒假python作业5
java·前端·python
木子啊12 小时前
前端组件化:模板继承拯救发际线
前端
三十_A12 小时前
零基础通过 Vue 3 实现前端视频录制 —— 从原理到实战
前端·vue.js·音视频
前端小菜袅12 小时前
PC端原样显示移动端页面方案
开发语言·前端·javascript·postcss·px-to-viewport·移动端适配pc端
We་ct12 小时前
LeetCode 228. 汇总区间:解题思路+代码详解
前端·算法·leetcode·typescript
爱问问题的小李12 小时前
ue 动态 Key 导致组件无限重置与 API 重复提交
前端·javascript·vue.js
早點睡39012 小时前
高级进阶 ReactNative for Harmony项目鸿蒙化三方库集成实战:react-native-image-picker(打开手机相册)
react native·react.js·harmonyos
早點睡39012 小时前
基础入门 React Native 鸿蒙跨平台开发:react-native-easy-toast三方库适配
react native·react.js·harmonyos