【React 常用的 TS 类型】持续更新

1)定义样式的 TS 类型 【 React.CSSProperties 】

一般定义样式时需要的类型限制,如下:

javascript 复制代码
const customStyle: React.CSSProperties = {
    color: 'blue',
    fontSize: '16px',
    margin: '10px',
  };

2)定义 Input Ref 属性时的 TS 类型限制 【 React.RefObject<> 】这是一个泛型,内部表示引用的所有类型,如下:

javascript 复制代码
  <FormItem<ModalFormType>
    label="部署 Code"
    name="departmentCD"
    type="Input"
    input_maxLength={20}
    input_disabled={modalStateTitle === "edit"}
    input_ref={modalFormInput as React.RefObject<InputRef>}
    rules={[{ required: true, validator: departmentCDChange }]}
    style={{ width: "100%" }}
  />

3)定义 Input 输入框内容改变 ( change )事件类型 【 ChangeEvent<HTMLInputElement> 】

4)定义 Input 输入框按下回车事件类型 【 KeyboardEvent<HTMLInputElement> 】

5)定义返回值等通用类型 【 React.ReactNode 】

表示的是所有可以用于渲染的类型,比如最常见的 <span> <div> 字符串,数字,数组等。

如下 Tooltip 组件的封装:

javascript 复制代码
import { Tooltip } from "antd";
import React from "react";

interface CustomTooltipProps {
  title: string;
  children?: React.ReactNode;
}

const CustomTooltip: React.FC<CustomTooltipProps> = ({ title, children }) => {
  return (
    <Tooltip placement="topLeft" color="geekblue" title={title}>
      {children}
    </Tooltip>
  );
};

export default CustomTooltip;

时小记,终有成。

相关推荐
Мартин.5 分钟前
[Meachines] [Easy] Sea WonderCMS-XSS-RCE+System Monitor 命令注入
前端·xss
昨天;明天。今天。2 小时前
案例-表白墙简单实现
前端·javascript·css
数云界2 小时前
如何在 DAX 中计算多个周期的移动平均线
java·服务器·前端
风清扬_jd2 小时前
Chromium 如何定义一个chrome.settingsPrivate接口给前端调用c++
前端·c++·chrome
安冬的码畜日常2 小时前
【玩转 JS 函数式编程_006】2.2 小试牛刀:用函数式编程(FP)实现事件只触发一次
开发语言·前端·javascript·函数式编程·tdd·fp·jasmine
ChinaDragonDreamer2 小时前
Vite:为什么选 Vite
前端
小御姐@stella2 小时前
Vue 之组件插槽Slot用法(组件间通信一种方式)
前端·javascript·vue.js
GISer_Jing2 小时前
【React】增量传输与渲染
前端·javascript·面试
GISer_Jing2 小时前
WebGL在低配置电脑的应用
javascript
eHackyd2 小时前
前端知识汇总(持续更新)
前端