- 博客(289)
- 资源 (4)
- 收藏
- 关注
原创 React第十六章(useLayoutEffect)
是 React 中的一个 Hook,用于在浏览器重新绘制屏幕之前触发。与 useEffect 类似。
2024-11-21 02:06:17
535
原创 React第十五章(useEffect)
useEffect 是 React 中用于处理副作用的钩子。并且useEffect 还在这里充当生命周期函数,在之前你可能会在类组件中使用 componentDidMount、componentDidUpdate 和 componentWillUnmount 来处理这些生命周期事件。
2024-11-13 14:26:56
769
原创 React第十四章(useDeferredValue)
useDeferredValue 用于延迟某些状态的更新,直到主渲染任务完成。这对于高频更新的内容(如输入框、滚动等)非常有用,可以让 UI 更加流畅,避免由于频繁更新而导致的性能问题。
2024-11-06 08:55:30
385
原创 React第十三章(useTransition)
是 React 18 中引入的一个 Hook,用于管理 UI 中的过渡状态,特别是在处理长时间运行的状态更新时。它允许你将某些更新标记为“过渡”状态,这样 React 可以优先处理更重要的更新,比如用户输入,同时延迟处理过渡更新。
2024-11-02 11:06:37
1128
原创 React第十二章(useSyncExternalStore)
我们实现一个useStorage Hook,用于订阅 localStorage 数据。这样做的好处是,我们可以确保组件在 localStorage 数据发生变化时,自动更新同步。实现代码我们将创建一个 useStorage Hook,能够存储数据到 localStorage,并在不同浏览器标签页之间同步这些状态。此 Hook 接收一个键值参数用于存储数据的键名,还可以接收一个默认值用于在无数据时的初始化。/*** @param key 存储到localStorage 的key。
2024-10-29 11:34:47
1205
原创 React第十一章(useReducer)
useReducer是React提供的一个高级Hook,没有它我们也可以正常开发,但是useReducer可以使我们的代码具有更好的可读性,可维护性。useReducer跟useState一样的都是帮我们管理组件的状态的,但是呢与useState不同的是useReducer是集中式的管理状态的。
2024-10-21 14:51:48
1205
原创 React第十章(useState)
useState是一个 React Hook,允许函数组件在内部管理状态。组件通常需要根据交互更改屏幕上显示的内容,例如点击某个按钮更改值,或者输入文本框中的内容,这些值被称为状态值也就是(state)。
2024-10-01 18:11:15
1394
原创 React第九章(组件通信)
将属性变为可选的这儿使用title举例title?: string然后将props进行解构,定义默认值{title = '默认标题'}title?: stringid: numberobj: {a: numberb: numberconst Test:React.FC = ({title = '默认标题'}) => {
2024-09-29 13:05:19
1295
原创 React第八章(初识组件)
如果它在程序里是一个块,那么它就是一个组件如果它在程序里面经常出现,那么也它也是组件使用通用的 UI 元素作为组件,可以让你只更改一处,就能更改所有使用该组件的地方。
2024-09-25 19:41:44
686
1
原创 React第六章(实现vdom,fiber,diff)
Virtual DOM 就是用JavaScript对象去描述一个DOM结构,虚拟DOM不是直接操作浏览器的真实DOM,而是首先对 UI 的更新在虚拟 DOM 中进行,再将变更高效地同步到真实 DOM 中。
2024-09-10 10:38:31
1387
1
原创 React第五章(swc)
SWC 既可用于编译,也可用于打包。对于编译,它使用现代 JavaScript 功能获取 JavaScript / TypeScript 文件并输出所有主流浏览器支持的有效代码。简单点来说swc实现了和babel一样的功能,但是它比babel快。FAQ为什么快?编译型Rust 是一种编译型语言,在编译时将代码转化为机器码(底层的 CPU 指令)。这种机器码在执行时非常高效,几乎不需要额外的开销。解释型JavaScript 是一种解释型语言,通常在浏览器或 Node.js 环境中通过解释器运行。
2024-09-08 01:06:30
1278
原创 React第四章(babel)
Babel 是一个 JavaScript 编译器,提供了JavaScript的编译过程,能够将源代码转换为目标代码。官网 https://babeljs.io/查看AST https://astexplorer.net/Babel所有的包 https://babeljs.io/docs/babel-traverse。
2024-09-06 21:42:54
1765
1
原创 React第二章(开发环境搭建 )
public 公共目录srcassets 静态资源App.css 根组件样式App.tsx 根组件index.css 全局css文件main.tsx 全局tsx文件vite-env.d.ts 声明文件.eslintrc.cjs eslint配置文件.gitignore git忽略文件index.html 入口文件index.htmlpackage.json 项目依赖模块文件tsconfig.json ts配置文件。
2024-09-05 15:57:48
1238
原创 React第一章(基本介绍)
React 是一个用于构建用户界面的 JavaScript 库。它由 Facebook(现Meta) 开发和维护,并在2013年开源。React 的设计初衷是帮助开发者构建复杂的用户界面,同时保持代码的可维护性和可扩展性。
2024-09-04 14:20:29
1764
2
原创 Nodejs 第八十六章(部署pm2)
它提供了多种功能,帮助开发者更好地管理和优化他们的应用程序,pm2 能做的其实有很多,比如监听文件改动自动重启,统一管理多个进程,内置的负载均衡,日志系统等等,此外,PM2 还集成了 Keymetrics,这是一个专门用于 Node.js 应用的性能监控和管理平台。:PM2 提供了全面的日志管理功能,可以方便地查看、合并和分析应用程序的日志信息。
2024-07-11 14:03:32
4730
原创 Nodejs 第八十五章(集群)
Node.js 集群(Cluster)是一种技术,用于在多核系统上创建多个 Node.js 进程,以充分利用系统的所有 CPU 核心,从而提高应用的性能和可用性。Node.js 本身是单线程的,集群模块提供了一种方式,通过使用多个进程来并行处理工作负载。
2024-07-11 13:59:11
741
原创 Nodejs 第八十三章(ElasticSearch全文检索)
ElasticSearch 是一个开源的、分布式的搜索和分析引擎,特别擅长处理大规模的日志和文本数据。它基于 Apache Lucene 构建,提供了强大的全文本搜索功能和实时的数据分析能力。ElasticSearch 常用于日志和事件数据的实时搜索、分析以及大型文本数据的全文检索。
2024-07-11 13:52:43
904
原创 Nodejs 第八十二章(Nacos动态配置)
在Nacos中,动态配置是指可以在运行时动态修改应用程序的配置信息,而不需要重新启动或重新部署应用程序。通过Nacos的动态配置功能,开发人员可以将应用程序的配置信息存储在Nacos服务器中,并在需要时进行修改和更新。这样,即使应用程序已经在运行,也可以通过修改Nacos中的配置信息来实现配置的更新,从而避免了重新部署的麻烦举个栗子。
2024-07-11 13:50:09
704
原创 Nodejs 第八十一章(Nacos注册中心)
官网https://nacos.io/zh-cn/docs/what-is-nacos.htmlNacos是阿里开源的一个项目,他可以致力于帮助您发现、配置和管理微服务。Nacos 提供了一组简单易用的特性集,帮助您快速实现动态服务发现、服务配置、服务元数据及流量管理解决方案。服务注册:应用程序可以将自己的服务实例注册到Nacos注册中心,包括服务的唯一标识、网络地址和元数据等。通过注册,服务提供者可以告知Nacos它们的存在和可用性。服务发现:应用程序可以查询Nacos注册中心以发现可用的服务。
2024-07-11 13:45:06
1205
原创 Nodejs 第八十章(Kafka高级)
KafkaJS 提供了对 Kafka 事务的支持,可以使用它来执行具有事务特性的操作。Kafka 事务用于确保一组相关的消息要么全部成功提交,要么全部回滚,从而保持数据的一致性
2024-07-11 13:40:52
751
原创 Nodejs 第七十九章(Kafka进阶)
server.properties是Kafka服务器的配置文件,它用于配置Kafka服务的各个方面,包括网络设置、日志存储、消息保留策略、安全认证
2024-06-21 21:32:59
776
1
原创 Nodejs 第七十八章(Kafka)
Kafka 的主要设计目标是提供一个可持久化的、高吞吐量的、容错的消息传递系统。它允许你以发布-订阅的方式发送和接收流数据,并且可以处理大量的消息,同时保持低延迟。Kafka 的设计还强调了分布式的特性,使得它可以在大规模集群中运行,处理大量数据和高并发的请求。
2024-06-21 21:30:35
1208
原创 Nodejs 第七十七章(MQ高级)
Producer 将消息发送到 MQ 服务端,但并不期望这条消息立马投递,而是延迟一定时间后才投递到 Consumer 进行消费,该消息即延时消息
2024-06-11 00:37:56
796
1
原创 Nodejs 第七十六章(MQ进阶)
通过使用RabbitMQ作为缓冲,避免数据库服务崩溃的风险。生产者将消息放入队列,消费者从队列中读取消息并进行处理,随后确认消息已被处理。直连交换机(direct exchange):根据消息的路由键(routing key)将消息直接转发到特定队列。主题交换机(topic exchange):根据消息的路由键进行模糊匹配,将消息转发到符合条件的队列。头部交换机(headers exchange):根据消息的头部信息进行转发。
2024-06-11 00:30:55
875
原创 Nodejs 第七十五章(MQ)
RabbitMQ是一个开源的,在AMQP基础上完整的,可复用的企业消息系统。支持主流的操作系统,Linux、Windows、MacOS等多种开发语言支持,Java、Python、Ruby、.NET、PHP、C/C++、javaScript等AMQP(高级消息队列协议) 实现了对于消息的排序,点对点通讯,和发布订阅,保持可靠性、保证安全性。
2024-06-05 18:50:15
1070
1
原创 Nodejs 第七十四章(微服务)
微服务和微前端是类似的,微前端就是借鉴了微服务的理念去实现的,那么微服务指的就是,将应用程序拆分成为一系列小型、独立的服务,每个服务都是专注于执行特定的业务,比如文章的服务就执行,文章的逻辑,用户的服务,就执行用户的逻辑,这些服务可以独立开发,测试,部署以及扩展,并且可以通讯。
2024-06-05 18:41:10
896
原创 Nodejs 第七十三章(网关层)
技术选型fastify速度快适合网关层 fastify教程上一章有讲网关层是位于客户端和后端服务之间的中间层,用于处理和转发请求。它充当了请求的入口点,并负责将请求路由到适当的后端服务,并将后端服务的响应返回给客户端。网关层在分布式系统和微服务架构中起到了关键的作用。路由:网关层可以根据请求的URL路径或其他条件将请求转发到不同的后端服务。它可以根据特定的路由规则来决定请求应该被发送到哪个服务处理。负载均衡。
2024-05-22 03:42:14
1260
原创 Nodejs 第七十二章(fastify)
Fastify是一个web框架,高度专注于以最少的开销和强大的插件架构提供最佳的开发体验。:虽然不是强制的,但我们建议使用 JSON Schema 来验证你的路由并序列化你的输出,内部的Fastify 将模式编译成一个高性能的函数。Fastify 可以被视为 Node.js 中的一个高效、现代化的 web 框架,是构建快速 web 应用的一个优秀选择。:据我们所知,Fastify 是最快的 web 框架之一,根据代码复杂度,我们可以处理每秒高达。:Fastify 通过其钩子、插件和装饰器完全可扩展。
2024-05-22 03:36:41
1328
原创 Nodejs 第七十一章(libuv)
在Nodejs中,事件循环分为6个阶段。每个阶段都有一个任务队列。当Node启动时,会创建一个事件循环线程,并依次按照下图所示顺序进入每个阶段,执行每个阶段的回调。在Node.js中,libuv是作为其事件循环和异步I/O的核心组件而存在的。Node.js是构建在libuv之上的,它利用libuv来处理底层的。这个时间戳通常用于计算定时器的超时时间和检查事件的发生时间,而。官网解释过这个原因,是因为,在事件循环的每个循环迭代中,libuv会调用。在nodejs不同版本微任务执行策略不同。
2024-05-15 07:12:31
1316
原创 Nodejs 第七十章(OSS)
OSS 对象存储以对象为基本存储单元,每个对象都有唯一的标识符(称为对象键)和数据。OSS 提供了高可用性、高扩展性和高安全性的存储服务,适用于各种应用场景,包括数据备份与归档、静态网站托管、大规模数据处理、移动应用程序存储等。OSS(Object Storage Service)是一种云存储服务,提供了一种高度可扩展的、安全可靠的对象存储解决方案。我们电脑平时开发的时候都是按文件和文件夹的方式存储的。选择公共读,如果选择私有的访问图片的时候需要携带私钥。调用后端接口拿到需要上传的参数传递给阿里云接口。
2024-05-15 07:09:03
858
原创 Nodejs 第六十九章(杀毒)
杀毒(Antivirus)是指一类计算机安全软件,旨在检测、阻止和清除计算机系统中的恶意软件,如病毒、蠕虫、木马、间谍软件和广告软件等。这些恶意软件可能会对计算机系统和用户数据造成损害,包括数据丢失、系统崩溃、个人信息泄露等。ClamAV(Clam AntiVirus)是一个开源的跨平台杀毒软件,它专注于检测和清除恶意软件,包括病毒、蠕虫、木马、恶意软件和其他恶意代码。clamscan.scanDir 这个方法windows用不了只能在linux用。然后把这两个文件里面的。安装 clamscan。
2024-04-29 04:04:56
1174
1
原创 Nodejs 第六十八章(远程桌面)
远程桌面(Remote Desktop)是一种技术,允许用户通过网络远程连接到另一台计算机,并在本地计算机上控制远程计算机的操作。核心思想就是截图通过ws传输,具体传输的速率可以自己控制我这里设置的一秒钟,前端收到后展示到图片上,前端点击图片的XY轴,传输给服务器服务器通过robotjs模拟操作。因为robotjs 需要依赖于c++ node-gyp依赖python 需要通过node-gyp编译 robotjs。//如果你部署到服务器可以使用服务器的地址 我这里使用的windows 沙箱的ip。
2024-04-29 03:57:16
1214
原创 Nodejs 第六十七章(OpenAI)
OpenAI最著名的项目之一是GPT(Generative Pre-trained Transformer)系列模型,其中包括了GPT-3,它是迄今为止最大规模的语言模型之一。GPT-3具有惊人的语言生成和理解能力,可以执行各种自然语言处理任务,如文本生成、翻译、问题回答等。OpenAI是一个人工智能研究实验室和技术公司,致力于推动人工智能的发展和应用。新建index.js文件。使用Node.js和。
2024-04-23 05:07:32
1199
4
原创 Nodejs 第六十六章(SCL扫码登录)
SCL (Scan Code Login) 是一种扫码登录的技术,它允许用户通过扫描二维码来进行登录操作。这种登录方式在许多应用和网站中得到广泛应用,因为它简单、方便且安全。//如果返回的状态是 超时 或者是已授权 就停止轮训。index.js nodejs逻辑代码。//轮询调用检查接口。
2024-04-23 05:05:02
1288
原创 Nodejs 第六十五章(SDL单设备登录)
网站将这些颜色数值传递给一个算法,算法会对这些数据进行复杂的计算,生成一个唯一的标识。由于用户使用的操作系统、浏览器、GPU、驱动程序会有差异,在绘制图形的时候会产生差异,这些细微的差异也就导致了生成的标识(哈希值)不一样。SDL(Single Device Login)是一种单设备登录的机制,它允许用户在同一时间只能在一个设备上登录,当用户在其他设备上登录时,之前登录的设备会被挤下线。//谷歌abf12f62e03d160f7f24144ef1778396。//socket本地IP+端口。
2024-04-18 22:30:13
1244
原创 Nodejs 第六十四章(SSO单点登录)
因为每个应用的权限可以不一样,所以最后生成的token也不一样,还需要一个url,登录之后重定向到该应用的地址,正规做法需要有一个后台管理系统用来控制这些,注册应用,删除应用,这里节约时间就写死了。小满科技,小满教育,都是小满旗下的公司,那么我需要给每套系统做一套登录注册,人员管理吗,那太费劲了,于是使用SSO单点登录,但是每个应用是不同的,登录用的是一套,这时候可以模仿一下微信小程序的生成一个AppId作为应用ID,并且还可以创建一个。A 应用这里用Vue展示 App.vue。
2024-04-18 22:26:14
1130
原创 Nodejs 第六十三章(串口技术)
串口技术是一种用于在计算机和外部设备之间进行数据传输的通信技术。它通过串行传输方式将数据逐位地发送和接收。常见的串口设备有,扫描仪,打印机,传感器,控制器,采集器,电子秤等。
2024-04-10 13:37:34
1381
Vue3最新源码分享。
2022-02-03
project.zip
2021-09-20
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅