typescript strongly render react
React学习笔记23-非父子通信(订阅发布模式)
1.订阅发布模式进行兄弟组件通信的案例 1.构建一个调度中心 var bus = { list: [], //订阅 subscribe(callback) { this.list.push(callback) console.log(this.list) }, //发布 publish(name, ......
React学习笔记22-订阅发布模式
1.订阅发布模式的定义 订阅发布模式简单来说就是订阅者进行订阅,发布者进行发布,发布者发布时会通过调度中心通知到每一个订阅者。订阅者根据发布的内容选择是否进行对应的操作。 2.实现一个最简单的订阅发布 订阅发布模式的核心就是调度中心。一个最简单的调度中心里面应该具有三个要素 订阅方法,发布方法,回调 ......
React学习笔记21-非父子通信(状态提升)
1.状态提升(中间人模式)的定义 React中的状态提升概括来说,就是将多个组件需要共享的状态提升到它们最近的父组件 上.在父组件上改变这个状态然后通过props分发给子组件。 2.状态提升的使用 简单讲解一下下面的代码,下面模拟了一个电影列表和详情页面。 进行通信的是列表的item和详情组件。 可 ......
React学习笔记20-父子通信(子传父)
在React中子组件给父组件传参通过回调函数来进行。 父组件给子组件传递一个回调函数作为属性。 子组件在需要传递参数的地方调用父组件传递的回调函数即可。 import React, { Component } from 'react' class Navbar extends Component { ......
React前后端如何同构,防止重复渲染
首先解释React前后端同构、React首屏渲染的概念。然后通过这2个概念解决服务端渲染完成后浏览器端重复渲染的问题。更多技术干货详见www.linuxprobe.com ......
TypeScript export named default error All In One
TypeScript export named default error All In One error solution demos https://codesandbox.io/s/typescript-export-named-default-error-3yqdxw --> (🐞 反爬 ......
单个Nginx发布多个react静态页面
在有些网络环境中,端口是一种比较稀缺的资源,而我们又恰好有多个前端项目需要发布,我们可以采取将多个项目映射到同一个端口上面的方案加以解决。 本教程前端项目主要以react为主,部署在linux服务器上。 1. 将项目资源的访问地址修改为相对方式 在react项目package.json中,添加或者修 ......
基于class封装的高德地图定位选址及搜索功能(vue、react均可用)
import AMapLoader from '@amap/amap-jsapi-loader'; export default class AMaps { options: any; //初始参数 instance: any; //实例 geocoder: any; //地理编码 placeSea ......
2023-11-07 使用react脚手架搭建一个react-native app
ps:以前有写过类似的随笔,今天再次做个总结。 1.安装node.js 去node官网下载吧,这里不赘叙了; 2.安装脚手架create-react-native-app npm i -g create-react-native-app 这个安装过程有快有慢,看运气,我的是几秒就完成了; 3.使用脚 ......
NodeJS系列(15)- TypeScript (二) | 对象类型 (Object Types)
在 “NodeJS系列(14)- TypeScript (一) | 安装 TypeScript、常用类型” 里,我们简单介绍了 TypeScript 的安装配置,讲解和演示了 TypeScript 常用类型。本文继续介绍 TypeScript 对象类型 (Object Types)。TypeScri ......
NodeJS系列(14)- TypeScript (一) | 安装 TypeScript、TypeScript 常用类型
JavaScript 现在是有史以来最广泛使用的跨平台语言之一。JavaScript 最初是一种用于向网页添加微不足道的交互性的小型脚本语言,现已发展成为各种规模的前端和后端应用的首选语言。 虽然用 JavaScript 编写的程序的大小、作用域和复杂性呈指数级增长,但 JavaScript 语言表 ......
TypeScript打包构建工厂
TS 开发工厂 用于开发测试 typescript 代码片段或工具插件,可预览并编译成多种格式嵌入不支持ts的项目 Develop and test your typescript codes or tools. Preview and build to commonjs and esnext. P ......
React中使用context实现跨层组件通信
function A() { return (<> This is A component </>) } function B() { let msg = useContext(MsgContext); return (<> This is B component:::: {msg} </>) } ......
React中状态提升
代码案例 function A({ onGetAName }) { const name = `> ${new Date().getTime()} <`; return ( <div> This is A component ! {/*箭头函数形式来调用事件函数*/} <button onClick ......
React学习笔记19-受控组件
1.受控组件的定义 React组件的数据渲染是否被调用者传递的 props 完全控制,完全控制则为受控组件,否则非受控组件。即React 的 state 成为组件的唯一数据源。 下面用一个小案例来演示,案例中todolist组件的唯一数据源就是State,todolist组件就是一个受控组件 imp ......
React学习笔记18-非受控组件
1.非受控组件的定义 非受控组件即状态不是完全由React的state来控制的组件 React要编写一个非受控组件,可以 使用 ref 来从 DOM 节点中获取表单数据,就是非受控组件。 import React, { Component } from 'react' export default ......
React学习笔记16-属性props
1.属性的定义 props 是正常是外部传入的,组件内部也可以通过一些方式来初始化的设置,属性不能被组件自己更 改,但是你可以通过父组件主动重新渲染的方式来传入新的 props。 这就是React中的单向数据流 2.属性的特点 属性是描述性质、特点的,组件自己不能随意更改,必须由父组件进行更改 3. ......
React学习笔记17-属性VS状态
相似点: 都是纯js对象,都会触发render更新,都具有确定性(状态/属性相同,结果相同) 不同点: 1. 属性能从父组件获取,状态不能 2. 属性可以由父组件修改,状态不能 3. 属性能在内部设置默认值,状态也可以,设置方式不一样 4. 属性不在组件内部修改,状态要在组件内部修改 5. 属性能设 ......
React 点击复制按钮,复制浏览器内容,可粘贴到其他地方
效果: 代码: /** * 复制浏览器内容 * @param templateString 需要复制的内容 */ export const copyBrowerString = (templateString: string) => { const textArea = document.creat ......
尚硅谷李立超老师Typescripts笔记
第一章 快速入门 0、TypeScript简介 TypeScript是JavaScript的超集。 它对JS进行了扩展,向JS中引入了类型的概念,并添加了许多新的特性。 TS代码需要通过编译器编译为JS,然后再交由JS解析器执行。 TS完全兼容JS,换言之,任何的JS代码都可以直接当成JS使用。 相 ......
TypeScript
基础 类型声明空间与变量声明空间 在TypeScript中,有两个相关的概念:类型声明空间(Type Declaration Space)和变量声明空间(Variable Declaration Space)。 类型声明空间是指用于定义类型的命名空间,它包含了在代码中定义的类型、接口、类、枚举等。在 ......
React 中复制静态文件到 build的文件夹中
React 中复制静态文件到 build的文件夹中 环境:umi 框架 前提:在跟目录下放置了Dockerfile 文件,在build时需要自动复制到dist文件夹里面。 1. 安装 copy-webpack-plugin 插件 2. .umirc.ts 文件中使用copy命令 import { d ......
Failed to load plugin '@typescript-eslint' declared in '.eslintrc.cjs
项目配置依赖: vue3.3.4 + vite4.4.11 + eslint8.46.0 报错信息 Failed to load plugin '@typescript-eslint' declared in '.eslintrc.cjs » @vue/eslint-config-typescrip ......
React面试题: 我是否可以在项目中不断使用React.Component来优化项目
React.PureComponent 是 React 的一个组件,主要用于性能优化,可以避免不必要的渲染。它的主要特点是: 如果组件的 props 和 state 没有发生变化,则不会重新渲染(此处原理类似React.memo)。 可以自动检查深层对象和数组,判断其是否需要重新渲染(是深层比较)。 ......
React面试题: useCallBack()与React.memo的区别与使用常见场景
React.usecallback与React.memo的区别: React.useCallback 和 React.memo 是两种不同的优化方式: 主要功能: 它们都可以避免不必要的渲染,提高 React 应用的性能。 React.useCallback 是 Hoc(高阶组件)的解决方案,可以用 ......
React实战教程推荐
教程推荐 平台慕课网 博主正在创建网站,招募一批前端+Laravel开发的自学团队,无偿提供大量课程,前期当徒弟后期当同事未来未来希望是合作者。欢迎参观:ihopeso.cn React18+Next.js13+TS,B端+C端完整业务+技术双闭环 前端框架及项目面试-聚焦Vue3/React/We ......
直播小程序源码,react-native自定义文本输入框
直播小程序源码,react-native自定义文本输入框 Examples from props: ... _onChange = (label, value) => { this.setState({ [label]: value }); }; render() { return ( <View ......
【Bug解决】Can‘t perform a React state update on an unmounted component. This is > a no-op, but it...
在 React 应用程序中我们遇到以下警告消息: Can’t perform a React state update on an unmounted component. This is a no-op, but it indicates a memory leak in your applica ......
【图形学笔记】Lectre11-The Rendering Equation-渲染方程
Lectre11-The Rendering Equation-渲染方程 目录Lectre11-The Rendering Equation-渲染方程Models of Scattering 散射模型表面散射——BRDF(双向反射分布函数)一个点上的反射镜面反射Transmission 传播(似乎是 ......
[学习笔记]TypeScript查缺补漏(二):类型与控制流分析
@目录类型约束基本类型联合类型控制流分析instanceof和typeof类型守卫和窄化typeof判断instanceof判断in判断内建函数,或自定义函数赋值布尔运算保留共同属性字面量类型(literal type)as const 作用 类型约束 TypeScript中的类型是一种用于描述变量 ......