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<类型>(初始值);

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

相关推荐
一 乐5 小时前
婚纱摄影网站|基于ssm + vue婚纱摄影网站系统(源码+数据库+文档)
前端·javascript·数据库·vue.js·spring boot·后端
C_心欲无痕6 小时前
ts - tsconfig.json配置讲解
linux·前端·ubuntu·typescript·json
清沫6 小时前
Claude Skills:Agent 能力扩展的新范式
前端·ai编程
yinuo7 小时前
前端跨页面通信终极指南:方案拆解、对比分析
前端
yinuo7 小时前
前端跨页面通讯终极指南⑨:IndexedDB 用法全解析
前端
xkxnq8 小时前
第二阶段:Vue 组件化开发(第 16天)
前端·javascript·vue.js
烛阴8 小时前
拒绝配置地狱!5 分钟搭建 Three.js + Parcel 完美开发环境
前端·webgl·three.js
xkxnq8 小时前
第一阶段:Vue 基础入门(第 15天)
前端·javascript·vue.js
anyup9 小时前
2026第一站:分享我在高德大赛现场学到的技术、产品与心得
前端·架构·harmonyos
BBBBBAAAAAi9 小时前
Claude Code安装记录
开发语言·前端·javascript