react typescript components propstype

react 虚拟DOM的原理

1、虚拟DOM,就是虚拟节点,通过用一个JS对象表示真实DOM树结构,这个对象就包括标签名,属性,子节点等。然后将其渲染成真是的DOM节点。 2、第一步是模拟,用 JSX 语法写出来的元素其实是一个虚拟节点 <div id='a'> <span class='b'>test</span> </div ......
原理 react DOM

电子表格 VS 数据网格,你的React应用程序应该怎么选?

电子表格和数据网格:乍一看他们似乎是可互换的组件,由于两者都是用表格显示来格式化大量数据,因此很难知道应该为React应用程序选择哪个选项。 尽管它们的外观相似,但提供了非常不同的功能——选择错误的一个将对用户体验产生负面影响,了解两者之间的差异,以及它们最能解决哪些问题,将帮助您为React应用程 ......
网格 应用程序 表格 程序 数据

React框架使用

一:使用Vite创建React项目 二:React中组件使用 import React, { Component, useState } from "react"; //使用class定义组件 export default class Modet extends Component<any,any> ......
框架 React

TypeScript 工具类型

1. typeof 1.1 判断类型 typeof关键字可以用于判断变量的类型,如:"string" | "number" | "bigint" | "boolean" | "symbol" | "undefined" | "object" | "function"。 类型保护是可执行运行时检查的一 ......
TypeScript 类型 工具

Solon2 常用注解之 @Component 与 @Bean 的区别

一个高效的应用开发框架:更快、更小、更简单。 启动快 5 ~ 10 倍;qps 高 2~ 3 倍;运行时内存节省 1/3 ~ 1/2;打包可以缩到 1/2 ~ 1/10;同时支持 jdk8, jdk11, jdk17, jdk20。 ......
注解 Component 常用 Solon2 Solon

typescript装饰器(decorator)笔记

介绍: 随着TypeScript和ES6里引入了类,在一些场景下我们需要额外的特性来支持标注或修改类及其成员。 装饰器(Decorators)为我们在类的声明及成员上通过元编程语法添加标注提供了一种方式。 Javascript里的装饰器目前处在建议征集的第三阶段,但在TypeScript里已做为一项 ......
typescript decorator 笔记

Vscode提示"Option 'importsNotUsedAsValues' is deprecated and will stop functioning in TypeScript 5.5...."

完整错误如下。点击错误信息会定位到tsconfig.json和tsconfig.node.json两个文件。 Option 'importsNotUsedAsValues' is deprecated and will stop functioning in TypeScript 5.5. Spec ......

关于typescript引入第三方js文件

一、通过 require 方法 1.1. 安装 @types/node 并在 tsconfig.json 配置,如下图所示。 npm i @types/node 1.2. 在ts或vue中引入 const vc: any = require('@/libs/VCtrl.js') 二、通过 decla ......
第三方 typescript 文件

React Native Expo 热更新

以前都是expo publish 推送到我的expo进行调试的,今天在vscode的那个页面输入这个命令,竟然发现我手机上打包的app竟然热更新了?!!! 我没有下载apk,安装啥的,里面的内容竟然热更新了?!!!,厉害啊,我滴哥,expo太强了 ......
Native React Expo

JavaScript 发布-订阅设计模式实现 React EventBus(相当于vue的$Bus)非父子之间通信

提前声明: 我没有对传入的参数进行及时判断而规避错误,仅仅对核心方法进行了实现; 解决了react的非父子间的通信; 参考文档:https://github1s.com/browserify/events/blob/main/events.js https://www.npmjs.com/packa ......

TypeScript学习笔记-尚硅谷TypeScript教程(李立超老师TS新课)

TypeScript学习笔记-尚硅谷TypeScript教程(李立超老师TS新课)https://blog.csdn.net/m0_46549017/article/details/124626987?ops_request_misc=&request_id=&biz_id=&utm_medium= ......
TypeScript 老师 笔记 教程

React 组件进入和退出动画实现

实现了React中组件的进入和退出动画效果,主要是通过props给组件传参来决定进入和退出,然后根据props选择不同的animation class,并将组件停留在动画的结束阶段。 ......
组件 动画 React

React中图片的相对路径引入和绝对路径引入

React中当在JSX中的img标签中引入时使用相对路径引入,地址是基于index.html的而不是当前jsx文件的,如 <img src="./src/assets/images/google.png"> 此种方式的src是固定的字符串,当进行webpack打包时可能会出现路径问题,不推荐 使用J ......
路径 图片 React

React redux toolkit: Uncaught Error:[Immer] An immer producer returned a new...

React在写一个购物车的redux toolkit时遇到了问题。核心问题是reducer中不能既修改state,又return新值。修改后代码正常运行。 ......
Uncaught producer returned toolkit React

react的思想和数据流

最近忙着写前端界面,粗略讨论以下 react 的函数式编程思想和组件通信的应对思路。 纯函数和副作用 函数式编程中函数是一等公民。一个函数的返回值只取决于输入参数时,那么这个函数的行为是确定的,我们称之为纯函数。那么反过来,如果函数的输入参数相同,而返回值不确定,那么该函数就是有副作用的,是不纯的。 ......
数据流 思想 数据 react

[Typescript] Write clean Type 3 - make a wrapper to cleanup generic usages

Original code: import { CSSProperties } from "react"; const useStyled = <TTheme = {}>(func: (theme: TTheme) => CSSProperties) => { // Imagine that thi ......
Typescript cleanup generic wrapper usages

完整实现React day09

实现第一个测试工具test-utils 实现测试环境 实现ReactElement用例 实现测试环境 pnpm i -D -w jest jest-config jest-environment-jsdom 配置: const { defaults } = require('jest-config' ......
React day 09

Solon2 常用注解之 @Component 与 @ProxyComponent 的区别

在 Solon 提倡“克制”的原则下,托管组件分为: 普通组件: 主要由内核提供的:@Configuration、@Component、@Controller、@Remoting 注解的类 其中 @Controller、@Remoting 支持函数拦截 代理组件: 主要由内核提供的:@ProxyCo ......

TypeScript:交叉类型

交叉类型 又是TS的一个骚操作。他可以把多个类或接口,合并他们的所有属性和方法为一个新的类型: interface PersonA{ name: string; } interface PersonB{ age: number; sayHi(): void; } type Person = Pers ......
TypeScript 类型

TypeScript keyof 和 typeof

typeof typeof 是 JS 本身就有的一个操作符,只不过在 TS 中多了一个功能。typeof 在 JS 中是获取变量的类型字符串: console.log(typeof 42); // "number" console.log(typeof 'blubber'); // "string" ......
TypeScript typeof keyof

TypeScript extends

extends 的含义 extends 在接口和类中都是继承的意思,继承之后的子接口或子类都是属于这个父接口或父类的,是一个从属关系。 extends 还有一个重要的用法就是在类型中,依旧还是继承的意思,是一种从属关系。如下的例子所示: interface Animal { name: string ......
TypeScript extends

React onBlur回调中使用document.activeElement返回body解决方案

最开始想实现一个功能,点击img图标后给出购物下拉框CartDropdown,当img及CartDropdown失去焦点时隐藏CartDropdown。 最开始的核心代码如下: export default function Cart() { const [isCartOpen, setIsCart ......

10分钟理解React生命周期

前言 学习React,生命周期很重要,我们了解完生命周期的各个组件,对写高性能组件会有很大的帮助. 一、简介 React /riˈækt/ 组件的生命周期指的是组件从创建到销毁过程中所经历的一系列方法调用。这些方法可以让我们在不同的时刻执行特定的代码,以满足组件的需求。 React 的生命周期可以分 ......
周期 生命 React

TypeScript type 关键字和 interface 关键字

前言 type 和 interface 都可以声明 TS 类型。 type Point1 = { x: number; y: number; }; interface Point2 { x: number; y: number; }; 它们两个声明这个对象类型有任何区别吗?很明显没有,我认为最能区分 ......
关键字 关键 TypeScript interface type

day09 react完整手写

实现Hooks的数据结构 fiberNode中可用的字段: memoizedState updateQueue 实现useState 包括2方面工作: 实现mount时useState的实现 实现dispatch方法,并接入现有更新流程内 ......
react day 09

D. Connected Components

D. Connected Components https://www.codeforces.com/contest/292/problem/D 思路 由于需要删除任意 连续段的 连接线, 引入前缀和 连续段的左右两边都需要, 所以引入两个前缀和。 https://blog.csdn.net/qq_ ......
Components Connected

构建React-app应用时create-react-app卡住超慢的解决办法

解决方案是换源,这个解决方法是从网上找到的,特此整理过来收藏一下。虽然平常使用cnpm来代替npm,但也只是使用新的指令而已。而在寻求create-react-app的相关配置希望修改registry时失败了,最后发现create-react-app指令默认调用npm,于是直接把npm的regist ......
create-react-app React-app app 办法 create

TypeScript 报错:Type '({ filename: string; createTime: string; filePath: string; fileId: number; } | undefined)[]' is not assignable to type 'PiFile[]'.

问题: 因为TypeScript不支持直接给一个接口类型的变量 赋一个未知的值。 如 const a:A = { name:'s' }; 你需要给这样的对象或数组值使用as 指定一个类型。 正确写法: const a:A = { name:'s' } as A; 数组写法一样: const a:A[ ......
string 39 TypeScript createTime assignable

论Vue和React的不同之处

论Vue和React的不同之处 Vue 和 React 都是用于构建 UI 界面的流行框架。 它们的哲学也有很多相似的地方,我们可以认为这些特性是流行前端框架的一个趋势。它们是: 组件化。将结构、样式、脚本进行耦合,让界面一部分区域能够独立出来,并可以提供复用; 声明式。摒弃了 JQuery 那种手 ......
React Vue

typescript vue3 VueDraggable 报错 Uncaught TypeError: Cannot read properties of null (reading 'element')

Uncaught TypeError: Cannot read properties of null (reading 'element') nnot read properties of null (reading 'index') 错误写法 就是说子组件需要用div包着,你用其他东西,他无法添加 ......