- 博客(3852)
- 资源 (11)
- 收藏
- 关注
原创 Jira工具介绍(项目管理工具)
Jira最初是为软件开发团队设计的问题追踪工具,其名称源自"Gojira"(日语中哥斯拉的发音),寓意它能"吞噬"项目中的bug。经过多年发展,Jira已演变为一个全面的工作管理平台,支持敏捷开发、IT服务管理、业务项目管理等多种工作模式。Jira的核心价值在于它能够将复杂的工作流程可视化、标准化,并通过数据驱动的方式帮助团队持续改进。Jira已从简单的bug追踪工具成长为全面的工作管理平台,其价值不仅在于功能强大,更在于能够随着团队成长而适应变化。
2025-12-26 00:33:54
907
原创 英语中at、on、in抽象用法辨析(英语ai、英语on、英语in)
掌握in、on、at的关键不在于死记硬背规则,而在于理解它们背后的空间隐喻如何延伸到抽象领域。当你不确定时,问问自己:这是在描述一个点(at)、一个表面(on)还是一个包含空间(in)?随着使用频率增加,这些区别会逐渐内化为你的语感。记住,即使是英语母语者,有时也会在某些边缘情况下犹豫。语言是活的,规则总有意想不到的例外,但理解核心概念能帮助你在大多数情况下做出正确选择。
2025-12-25 23:49:52
319
原创 端到端开发(End-to-End Development)介绍
端到端开发是一种软件开发方法论,指从项目初始构想到最终交付和维护的完整过程,覆盖软件开发生命周期的所有阶段。这种方法强调开发团队对产品全流程的责任和掌控。传统开发通常采用"瀑布模型",各阶段分离且由不同团队负责;而端到端开发更强调一体化和连续性,常见于敏捷开发和DevOps实践中。端到端开发是现代软件工程的重要实践,尤其在数字化转型和敏捷开发盛行的今天,已成为许多领先科技企业的标准工作方式。
2025-12-24 15:35:07
914
原创 Google Al Studio报错:Failed to create GitHub repository, Insufficient permissions to create the GitHub
(没解决)
2025-12-21 20:05:40
785
原创 透明锁屏软件keyfreeze(屏幕锁)
有时我们想锁定我们的屏幕,不让键盘或鼠标误触,但是又想让屏幕内容持续显示不关闭,如何做呢?透明锁屏软件keyfreeze能帮助我们实现这个功能。
2025-12-13 11:39:00
1033
原创 雅思大作文C20-Test 2-Task 2(Long school holidays vs. short school holidays)
范畴范例得分体现高阶词汇(LR)词汇多样且准确复杂句式(GRA)句子结构丰富搭配自然母语者式表达。
2025-12-01 17:47:42
967
原创 雅思小作文C14-Test 1-Task 1(average percentages in typical meals of three types of nutrients)
下面是对你这篇雅思小作文的详细点评和改进建议👇。主要失分在语言准确性和逻辑性。
2025-11-30 20:49:55
805
原创 雅思小作文(折线)C19-Test 1-Task 1(Number of participants, by activity 2000-2020)在线单词统计、单词数统计、单词数量统计
一定包含Overview 段按趋势组织段落,而不是活动一个一个描述多用比较级、变化动词和准确数据检查拼写与语法。
2025-11-28 21:08:34
778
原创 React useMemo(当依赖项未变化,重复渲染时直接返回上一次缓存计算结果,而非重新执行计算)
在 React 开发中,组件渲染性能是一个永恒的话题。当组件包含复杂计算、依赖重的派生数据,或在高频渲染场景中运行时,就会带来性能下降。这时,React 提供的useMemo就能发挥重要作用——用于缓存计算结果,避免不必要的重复运算,从而提升应用性能。useMemo是 React 提供的重要性能优化工具,适用于缓存昂贵计算或保持引用稳定。在 Next.js App Router 中,它和普通的 React 组件用法完全一致,但要注意不要滥用。在真实项目中,合理应用useMemo。
2025-11-16 22:05:28
1143
原创 React zustand教程(create函数、persist中间件、zustand/middleware、Redux DevTools)查看本地存储localStorage、immer
Zustand 是由 React Spring 团队开发的一个极简状态管理库。🌿 小巧(gzip 后只有 1KB 左右)⚡ 没有样板代码(不像 Redux 那样啰嗦)🧩 支持 hooks 风格🔄 支持中间件(如persistdevtools💪 支持 TypeScript 开箱即用“Zustand = 极简的 Redux + React Hooks 的优雅”这是对象字面量,不是 JSONincreasedecreasereset是对象的方法(函数属性)set。
2025-11-14 23:13:33
1018
原创 (搞不懂,不看了,以后遇到再搞!)React Zustand Next.js SSR注意事项(需要做状态隔离,为每个请求创建独立的store实例)共享实例
Zustand 默认导出的是一个单例 hook(当你在模块顶层create()时),在浏览器端这通常是期望的(SPA 中的单一全局状态)。如果在服务器端把这个单例 store当成全局共享使用,会导致多个请求/用户之间共享同一个内存实例,从而出现状态串流(请求 A 的修改导致请求 B 可见)。Next.js 的app路由没有;在app路由里我们常用 Server Components 来构建服务端逻辑并把初始 state 通过 props 传给客户端组件,这要求我们。
2025-11-14 22:36:39
1671
原创 Next.js SSR客户端组件两个阶段:服务端预渲染(Server-Side Rendering)、客户端水合(Client Hydration)客户端组件代码在两个阶段都会运行一次
阶段发生位置作用是否可交互服务端预渲染(SSR)服务器生成静态 HTML❌ 否客户端水合(Hydration)浏览器绑定事件 & 状态✅ 是✅ 客户端组件的渲染函数(render)确实在 SSR 和 Hydration 阶段各运行一次,但只有客户端那次会执行副作用和事件绑定。
2025-11-13 23:00:12
986
原创 React zustand todos案例(带本地存储localStorage、persist)todoStore.ts
添加任务切换完成状态批量选择/取消选择删除选中任务清除已完成的选中任务数据持久化(localStorage)Zustand:轻量级状态管理,API 简单持久化:使用persist中间件自动保存到 localStorage不可变更新:使用set函数式更新,保持状态不可变TypeScript:类型安全,提供良好的开发体验函数式编程:使用mapfilter等函数式方法处理数组Zustand 的基本用法状态持久化TypeScript 类型定义。
2025-11-13 18:05:30
1151
原创 zustand解决的痛点以及zustand状态管理与C++全局变量的区别对比
正如知识库[1]所述:Zustand的"核心理念是’最小化’,意味着你可以只为应用中需要的部分状态创建store,而不是强迫使用全局状态,进而提高了应用的性能和可维护性"。Zustand的魔力在于它让你"忘记状态管理的存在,专注于构建功能本身",这正是它被众多开发者称为"轻量级状态管理的革命"的原因。5,还可以用extern在函数外对全局变量声明,使全局变量的作用域从声明处到文件的结束。4,当全局变量与局部变量重名的时候,起作用的是局部变量,全局变量被屏蔽掉。Zustand不是C++全局变量,而是。
2025-11-10 20:44:50
846
原创 前端状态管理,为什么要状态管理?(React状态管理、zustand)
让代码更简洁、可维护,避免不必要的数据传递。总之,状态管理不是为了"增加复杂度",而是为了在应用规模扩大时,保持代码的清晰度和可维护性。
2025-11-10 20:39:47
1412
2
原创 英语seem的用法(It seems that+从句、seem + to do、seem to have done、seem+形容词、seem+like+名词、It seems to me that)
用法类型结构示例基本形容词结构seem + adj动词不定式结构完成式结构从句结构搭配人称“Seem” 虽然是一个简单的词,但在英语表达中非常灵活。掌握它的几种常见结构和搭配,不仅能让你的表达更自然,还能更准确地传达“主观看法”与“客观观察”之间的微妙区别。
2025-11-10 17:50:17
902
原创 React useContext介绍(在组件树中共享数据,无需通过props层层传递)createContext、提供数据Provider、消费数据Consumer
React 的Context提供了一种方式,让我们可以在组件树中共享数据,而不需要通过 props 层层传递。提供数据(Provider)消费数据(Consumer)功能用法说明创建 Context定义共享数据容器提供数据包裹需要访问数据的组件树消费数据在任意子组件中读取数据封装自定义 Hook提升可读性和复用性useContext是 React Hooks 体系中最简洁、却极其实用的一个 Hook。它让我们能在函数组件中优雅地共享全局状态,减少 props 层层传递的痛苦。💡。
2025-11-02 17:06:38
912
原创 React children介绍(一个特殊的prop(属性), 代表组件标签内部包裹的内容)(props.children、React.ReactNode、React props)
概念含义举例props组件外部传入的数据children组件标签内的内容<Card>这里是 children</Card>用途让组件更灵活地包裹内容Layout、Provider、Modal、Card、Button 等类型通常是可以是任意可渲染内容取值在函数参数里直接解构。
2025-10-31 22:57:08
1166
原创 Cursor执行命令报错:Bad file descriptor(Cursor终端报错)
这次版本是cursor打开自带的终端(不让我们自己输命令那种,只能读)cursor一执行命令就报错:Bad file descriptor。但是用管理员启动,提示cursor后续更新可能不可用。后面关闭cursor,不用管理员启动,貌似又可以了。用管理员启动就好了,莫名奇妙。
2025-10-30 22:34:31
1018
原创 npm install命令介绍
虽然是个再熟悉不过的命令,但了解它的机制、参数与最佳实践,能大幅提升开发效率与项目稳定性。掌握这些技巧,你就能更自如地管理依赖,构建更可控、更可靠的 Node.js 环境。📘npm 官方文档:npm installnpm CLI 配置参考。
2025-10-30 21:28:05
2270
原创 TS type关键字(TS类型别名type alias、联合类型Union Types、交叉类型Intersection Types、泛型类型、条件类型、映射类型Mapped Types)
很多初学者经常问:“我都能用interface定义对象类型,那为什么还需要type呢?特性typeinterface定义对象结构✅✅可以扩展(继承)✅(通过交叉类型)✅(通过extends可以定义联合、交叉类型✅❌可以用于基本类型✅❌举个例子👇// 用 interface 定义// 用 type 定义功能相同。但如果要定义更复杂的类型,比如联合类型或条件类型,就只能用type简单对象结构→ 用interface复杂类型运算、联合、交叉→ 用type。
2025-10-29 22:31:12
777
原创 TS extends关键字(类继承、接口继承、类型扩展、泛型类型约束Type Constraint、条件类型分发Conditional Types、分发条件类型)
用法场景示例含义类继承子类继承父类接口继承接口扩展泛型约束限制泛型类型结构条件类型X : Y类型逻辑判断分发行为...联合类型分支推断extends看似简单,却几乎贯穿了 TypeScript 类型系统的各个角落。它既能用于面向对象的继承,也能支撑类型编程的逻辑判断。理解它的不同语义,是迈向高级 TypeScript 编程的必经之路。
2025-10-29 21:37:15
824
原创 JS睡眠函数(JS sleep()函数、JS单线程、Event Loop事件循环)假睡眠
方法是否阻塞可读性推荐程度setTimeout否一般⭐⭐Promise +await否高⭐⭐⭐⭐whilebusy loop是差❌ 禁止使用JavaScript 虽然没有原生的sleep()函数,但通过异步机制,我们依然可以实现优雅、非阻塞的“睡眠”。记住一句话:JS 的 sleep,不是“让线程睡觉”,而是“让任务等待”。
2025-10-28 22:52:03
1193
原创 React suspense介绍(捕获抛出promise状态为pending暂停渲染,使用备用UI,继续监听若状态变成resolved触发二次渲染)(异步加载懒加载)ErrorBoundary错误边界
在现代 Web 开发中,异步数据加载是几乎每个应用都会遇到的问题。我们常常需要等待网络请求完成、组件懒加载结束,或者资源准备好之后再渲染 UI。虽然简单,但当异步逻辑复杂时,代码会变得难以维护。为了解决这一问题,React 团队引入了 Suspense—— 一种用声明式方式处理异步渲染的机制。let result;})});return {read() {},// 若数据未就绪,将触发 Suspense fallbackreturn (
2025-10-28 17:07:59
1064
原创 Next.js报错:Switched to client rendering because the server rendering errored(服务端渲染SSR阶段抛错,降级为纯客户端渲染)
简而言之:这是 SSR 阶段的请求失败导致的可恢复错误。要么保证请求成功,要么把请求挪到客户端副作用里,或用正规服务端数据获取并处理错误。注意:如果把请求挪到客户端副作用里,suspence可能就没用了。
2025-10-28 16:58:35
1020
原创 React懒加载介绍(React.lazy()+Suspense、React延迟加载、按需加载组件)spinner、Webpack代码分割(Code Splitting)、chunk
懒加载(Lazy Loading),又称延迟加载,是一种性能优化策略。“按需加载”—— 只在用户真正需要时,才去加载对应的资源。在 React 中,懒加载通常指按需加载组件。比如首页用户暂时看不到的管理后台组件,我们就没必要在首屏就加载进来,而是当用户进入后台页面时再加载。实际开发中我们通常会使用一个优雅的加载动画,而不是简单的文本。特性说明概念按需加载组件,减少首屏体积核心 API<Suspense>典型场景路由懒加载、大组件延迟加载优点加快首屏加载速度,提升用户体验注意。
2025-10-26 22:28:44
898
原创 React.FC(React.FunctionComponent)介绍(为函数式组件提供的泛型类型定义)(已不推荐使用,推荐显示声明props类型,推荐直接用普通函数定义组件)
在使用这就是 React.FC(或的用法。那么,React.FC到底是什么?它的优缺点有哪些?在现代 React 项目中,我们是否还应该使用它?本文将带你全面了解。React.FC是 React 官方为函数式组件(Functional Component)提供的泛型类型定义。propTypes?: string;可以看到,React.FC其实是一个函数类型,接受泛型参数P(组件 props 的类型),并返回一个 React 元素。这使得组件在书写时具备类型安全和自动补全的优势。
2025-10-26 17:59:02
1105
原创 React单页应用前端路由设计原理与规则(在不刷新页面的情况下,让URL与视图状态保持同步)React Router、React路由、BrowserRouter、Routes
它定义了用户与系统交互的路径;决定了工程的模块划分与加载方式;甚至影响 SEO、性能与权限体系。理解其原理、遵守设计规则,就能让你的 React 应用具备更强的扩展性与一致性。如果说组件是前端的“细胞”,那么路由就是“神经系统”。掌握它,我们才能构建真正灵活、可进化的前端应用。前端路由的本质,不是路径的跳转,而是状态的映射。掌控路由,你就掌控了应用的灵魂。
2025-10-24 17:49:26
1086
1
原创 Web单页应用(SPA)路由设计(以React为例)
良好的 SPA 路由设计是“信息架构 + 工程实践”的结合。以 React 为例,围绕 URL 语义、嵌套路由、代码分割与鉴权构建清晰的路由树,可以在保证用户体验的同时显著提升项目的可维护性与演进空间。需要 SEO/首屏性能时,再升级到 SSR/SSG 架构(如 Next.js),延续相同的路由与信息架构思想即可。
2025-10-24 16:48:46
800
原创 前端视口:Layout Viewport布局视口、Visual Viewport视觉视口、Ideal Viewport理想视口、Meta Viewport、clientWidth、innerWidth
在网页中,视口(Viewport)可以理解为浏览器可视区域的窗口。用户在屏幕上能看到的页面内容范围,就是当前的视口。视口 ≠ 页面宽度视口 = 当前设备浏览器窗口中实际可见的区域网页的内容可以比视口大,也可以小。超出视口的部分,用户可以通过滚动查看。类型说明获取方式页面布局宽度用户当前可见区域理想设备宽度想要移动端网页正常显示,必须理解视口,并正确设置。
2025-10-24 16:13:24
904
原创 Tailwind CSS实战:构建仿ChatGPT聊天页面(失败了)
通过这个简单的示例,我们使用Tailwind CSS实现了仿ChatGPT的聊天界面。Tailwind CSS的实用类使我们能够快速构建响应式UI,而Zustand则提供了简洁的状态管理。使用Tailwind的实用类快速构建UI通过Zustand管理应用状态使用假接口模拟后端交互确保界面在不同设备上的响应式体验这个项目是学习Tailwind CSS和现代前端开发模式的绝佳起点。随着你对Tailwind的熟悉,可以尝试添加更多功能,如消息表情、图片上传等。
2025-10-24 15:14:00
617
原创 Tailwind CSS Next.js实战(官方)Tailwind Demo、Tailwind教程
【代码】Tailwind CSS Next.js实战(官方)Tailwind Demo、Tailwind教程。
2025-10-24 15:05:22
858
1
原创 HTML5标签介绍(H5标签、html标签)语义化标签(Semantic Tags)让网页语义更清晰
https://www.w3schools.com/html/tryit.asp?filename=tryhtml_default在网页开发的早期,HTML 主要用于描述页面的结构,但并没有很强的语义。例如,开发者经常使用 和 来包裹各种内容,用 class 名区分不同的模块。这样虽然能实现页面布局,但对于搜索引擎、读屏软件或后期维护者来说,页面结构往往不够清晰。HTML5 的出现,改变了这一切。它引入了一系列 语义化标签(Semantic Tags),让网页的结构更自然、语义更明确,既利于 SEO,
2025-10-24 14:53:54
794
原创 React useEffect介绍(在组件渲染后执行副作用Side Effects逻辑,比如数据请求、事件监听、操作 DOM等)清理函数cleanup、AbortController取消控制
函数执行时对外部世界的影响首次渲染后:没有清理函数触发依赖项变化时:先调用上一次 effect 返回的清理函数,然后再执行当前 effect组件卸载时:调用最后一次 effect 的清理函数useEffect是处理副作用的 Hook,它让我们把副作用逻辑与渲染逻辑隔离开来。清理函数在 effect 卸载或依赖变化时负责资源释放,是防止内存泄漏与状态异常的重要保障。依赖数组用于精确定义 effect 何时执行,要包含 effect 内部所用到的所有外部变量。
2025-10-22 23:19:29
1019
原创 假数据神器JSONPlaceholder介绍(假数据接口、模拟数据接口、模拟测试接口、Mock data interface)
👉是一个在线 REST API 服务,提供一系列模拟数据接口前端开发阶段的接口调试;HTTP 请求库(如 Axios、Fetch)的测试;后端框架或工具的 API 调用演示;教学与 Demo 示例。它的数据内容不会变化,也不会真的存入数据库,因此可以无限次请求,完全免费、无需注册。优点说明🚀 免费且无需注册打开即用🧩 RESTful 风格与真实项目一致🔁 稳定可靠数据结构固定💡 支持 CRUD方便联调测试。
2025-10-22 22:58:39
1258
原创 React useCallback介绍(用来缓存函数的引用,避免每次渲染都重新创建函数)主要用于性能优化
在自定义 Hook 中使用}, [url]);这里若不加fetchData每次都会变,useEffect就会无限执行。在这个代码中,fetchData 会因为 url 变化而变化。useCallback 的依赖项是 [url],所以当 url 发生变化时,fetchData 函数会重新创建useEffect 的依赖项是 [fetchData],所以当 fetchData 变化时,useEffect 会重新执行。
2025-10-22 22:01:07
1093
Dify+DeepSeek - Excel数据一键可视化(创建步骤案例)-DSL工程文件(可直接导入)
2025-03-05
Dify+DeepSeek - Excel数据一键可视化(创建步骤案例)-Markdown示例文件
2025-03-05
auto.js安装包:app-v6-armeabi-v7a-release-unsigned-signed.apk
2024-02-11
auto.js安装包:app-v6-universal-release-unsigned-signed .apk
2024-02-10
raid卡配置教程(基于Ubuntu 20.04 操作系统安装指导书 (鲲鹏 920 处理器)安装)
2023-12-12
Ubuntu 20.04 操作系统 安装指导书 (鲲鹏920处理器)
2023-12-12
ffmpeg h264编码格式测试视频
2023-12-10
vsftpd-3.0.5
2022-08-22
Intel-RealSense-D400-Series-Datasheet
2019-07-29
CMD_right_click_key_menu_with_administration.reg
2019-08-29
为什么C++对整型常量的指针用const_cast并修改值后,出现了两个不一样的值?
2023-08-23
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅