- 博客(234)
- 收藏
- 关注
原创 青丘野谭·烛阴契
周灵王时,有士子名陆珩(hóng),字景渊,博通坟典①,尤好《山海经》。尝游于泰山之阴,遇暴雨,避入古穴。穴深百仞,壁刻鸟篆,中有石室,悬一铜镜,镜背蟠螭(pán chī)②盘绕,铭曰:“照魄通幽,见吾者契。”陆生抚镜,忽觉身轻如絮,堕入冥冥。俄而天光乍开,见城阙巍峨,朱雀门上书“幽都”二字。街市行人,面无七窍,唯心口微光闪烁。一女子素衣曳地,立于奈河桥畔,手持青玉简,目若秋水,唇含玄霜。女见生,惊曰:“汝非阳世之人,何敢擅入幽都?”生具道其由。女叹曰:“吾乃西王母座下司命女史,名曰瑶媖(yáo yīng)
2025-11-24 03:15:00
38
原创 青丘野谭·双生契
越州有士子沈砚(yàn),字墨卿,性狷介①,不谐于俗。弱冠丧妻,誓不再娶。尝避暑于会稽山阴之兰渚精舍,夜读《南华经》,忽闻窗外低吟:“君心如石,妾骨成灰。”启户视之,一素衣女立梧桐下,鬓亸(duǒ)②钗横,泪痕犹湿。女自云姓林,名窅(yǎo)娘,本邻邑富室女,因拒权贵逼婚,投缳(huán)③而死,魂无所归,感君清寂,愿侍笔砚。沈生初惧,然见其言婉容哀,遂许暂居西厢。窅娘善解人意,每夜煮茗伴读,或代抄残卷,指节纤纤,墨香染袖。逾月,情愫暗生。生尝叹曰:“若卿在世,吾当聘为继室。
2025-11-23 13:00:00
42
原创 青丘野谭·镜中人
豫章有士子周愃(xuān)者,少负才名,然性浮躁,好声色。尝游钱塘,寓西湖之畔。邻有女,姓苏,名媆(nuǎn),父早殁,与母居,容止端丽,工刺绣,人称“针神”。周生窥其浣纱于柳岸,心悦之,托媒求聘。媆母曰:“吾女不嫁轻薄子。若君能闭户读书,三月不窥园,当许婚。”生诺,遂焚香设帷,杜门谢客。然心猿难锁,夜辄梦媆,寤则怅然。忽一日,有老叟携古镜至,镜背镌“照影知心”四篆字,索值十金。生囊中羞涩,竟窃媆母所藏玉簪易之。镜置案上,夜半光华自生。生偶对镜自照,忽见镜中己影笑曰:“君欲得媆乎?吾可代君往。
2025-11-22 09:45:00
55
原创 青丘野谭·双影记
顺天府有士子赵珩(héng)者,弱冠登科,风仪俊朗。尝赴金陵省亲,道经姑苏,舟泊寒山寺下。时值秋深,月色如练,忽闻岸上琴声清越,循声往视,则见一精舍临水,朱扉半启,内有女子素衣抚琴,旁立青衣婢。赵生伫立良久,琴止,女顾盼而笑曰:“客非赵郎乎?妾已候君三载矣。”生愕然曰:“素未谋面,何出此言?”女裣衽(liǎn rèn)①曰:“妾名婉娘,本吴中旧族,因父殁家倾,寄居于此。昨夜梦神人告曰:‘青鸾将至,尔缘在焉。’今见君玉貌,岂非前定?”生感其诚,遂入室共语,言语投契,如故交重逢。自此,赵生留连不去。
2025-11-21 15:30:00
102
原创 青丘野谭·画狐
青州王生,性孤介,好丹青。尝游崂山,遇雨,避于废寺。殿宇倾颓,蛛网蔽户,唯西厢一室稍完。生拂尘设榻,夜燃藜火,展卷自娱。忽闻窗外窸窣(xī sū)有声,启扉视之,见一女子,年可十六七,衣素绡,容色殊丽,然双瞳微碧,若含秋水。生惊问所来,女裣衽(liǎn rèn)①曰:“妾邻村李氏女,避狼至此,愿假一隅以待旦。”生怜而许之,分席而坐,不敢亵视。女自袖出小奁(lián)②,取胭脂点唇,复理鬓发,顾盼生姿。俄而笑谓生曰:“君善绘乎?”生颔之。女乃解罗带,铺素缣(jiān)③于案,请生图其貌。
2025-11-20 14:00:04
83
原创 青丘野谭·狐医
后三年,涣母病笃,涣遍访名医,皆云不治。涣忧心如焚,忽忆前事,遂往南山之阴,呼“胡三娘”。未几,一女子自林间出,衣白,容色绝丽,曰:“恩人何所愿?” 随涣至家,取草一茎,煎汤饮之,母病立愈。一日,涣入深山,遇一老狐卧于道旁,足中箭镞,血流殷红,奄奄待毙。涣恻然,遂拔箭敷药,以衣裹之。涣邻有王生者,素无赖,见涣母病愈,疑之。潜随涣入山,见涣呼三娘,女至,王生欲擒之,女化狐而遁。王生归,病狂,自云见狐仙索命,不数日死。然则张生之仁,胡三娘之义,皆可风也。少聪颖,好读书,然屡试不第,遂隐于山林,以采药生。
2025-11-19 10:24:00
114
原创 CSS 数学函数完全指南:从基础计算到高级动画
CSS 数学函数让开发者能够:✅ 实现精确的动态计算✅ 创建智能的响应式布局✅ 制作复杂的数学动画✅ 减少对 JavaScript 的依赖从基础的四则运算到高级的三角函数、指数函数,CSS 已经具备了强大的数学计算能力,为现代 Web 开发打开了新的可能性。
2025-11-07 13:45:31
433
原创 使用 nvm 安装 Node.js
安装方式:nvm 是最专业的 Node.js 安装方式版本管理:轻松管理多个 Node.js 版本版本选择:推荐安装 LTS(长期支持)版本国内优化:配置 npm 中国镜像提升下载速度网络问题:通过镜像源和替代方案解决无法访问 GitHub 的问题。
2025-11-04 10:44:04
649
原创 公司网站 URL 地址规范
🧭清晰导向:用户一看就知道在哪里,要去哪里🔄一致性:所有路径遵循相同的命名规则🚀高效导航:最短路径到达目的地🌐全球通用:多语言用户都能理解📱全设备友好:在任何设备上都能完美工作记住:URL不是技术实现细节,而是用户体验的重要组成部分。每一次URL设计,都是在为用户铺设一条清晰的信息高速公路。
2025-10-21 10:11:18
2671
原创 React + TypeScript 企业级编码规范指南
编码的终极浪漫,是让后来者无需追问"为何如此"——规范早已把答案,写在每一处细节里。在现代前端开发中,React + TypeScript 已成为主流技术栈。但很多团队依然面临"代码风格混乱"、“组件复用性差”、"类型滥用"等问题。本文结合社区最佳实践,为你总结重要的编码规范,助你写出可维护、可读性强、团队协作友好的高质量代码。// ✅ Good: 完整的类型定义和默认值isActive?: boolean;onUpdate?onDelete?className?: string;
2025-10-20 15:29:24
982
原创 React 思维模式终极指南
/ 将复杂副作用封装为可复用的 Hookif (!return;if (!})if (!});// 使用自定义 Hook声明式思维:描述 UI 应该是什么样子,而不是如何操作 DOM组件化思维:将复杂 UI 拆分为独立、可复用的组件不可变思维:状态更新应该创建新对象,而不是修改现有对象单向数据流:数据从父组件流向子组件,事件从子组件流向父组件组合思维:通过组件组合而非继承来构建复杂 UI副作用管理。
2025-10-18 16:00:00
262
原创 写好 React useEffect 的终极指南
/ 自定义数据获取 Hooktry {if (!// 使用写好useEffect的关键是掌握“同步思维”而非“生命周期思维”明确同步目标- 知道你在同步什么完整声明依赖- 信任但不盲从 ESLint及时清理资源- 防止内存泄漏保持单一职责- 一个 Effect 做一件事优化依赖关系- 在完整的基础上精简处理竞态条件- 异步操作的安全性。
2025-10-17 10:10:32
1004
原创 React Hooks 核心原理与开发技巧
遵守 Hooks 规则- 保证调用顺序稳定合理使用 Key- 列表项使用唯一稳定标识适时优化性能- 在确实需要时使用 memoization解决闭包问题- 使用 ref 获取最新状态值设计组件 API- 使用 useImperativeHandle 暴露清晰接口掌握这些核心原理,能够写出更健壮、高性能的 React 应用!
2025-10-15 16:16:33
461
原创 React 19 vs React 18全面对比
更简单的数据获取- 服务器组件 + use Hook更好的表单处理- Action + 乐观更新减少样板代码- 直接 ref、文档元数据性能提升- 更小的包大小,更好的运行时开发体验- 更少的 Hook 依赖问题,更好的错误处理。
2025-10-14 10:59:34
563
原创 在 Javascript 中 finally 块的作用
finally的真正作用在于其执行的确定性和强制性。它就像一个信守承诺的伙伴,无论前方是坦途 (return) 还是荆棘 (throw),它都会在你离开前完成最后的清理工作。最佳实践:将finally仅用于清理和收尾工作。避免在finally块内使用returnthrowbreakcontinue,以防止掩盖原始意图。在与外部资源(I/O)打交道时,养成使用或的习惯。在现代JavaScript中,语法让finallytry {// 确保资源被释放,即使异步操作失败。
2025-10-11 14:24:42
323
原创 React 19 新特性:原生支持在组件中渲染 <meta> 与 <link>
React 19 引入了一项创新特性:组件内直接渲染 meta 和 link 标签,React 会自动将它们提升到文档头部。这一特性彻底改变了元数据管理方式,解决了传统方案(如使用第三方库或手动DOM操作)的诸多痛点。新功能支持在组件中直接声明SEO元数据、样式表等,并新增precedence属性控制样式加载优先级,显著简化了开发流程。该特性对SSR友好,能自动处理服务端渲染时的标签提升,同时提升了SEO优化和性能管理能力,标志着React在元数据处理方面的重要进步。
2025-10-02 10:00:00
433
原创 Suspense 与 Activity:构建下一代 React 用户体验
Suspense 和 Activity 代表了 React 生态系统在用户体验方面的两个重要发展方向。它们从不同的维度解决了现代 Web 应用面临的挑战,共同构建了下一代用户体验的基础设施。
2025-10-01 08:00:00
877
原创 React 18 的自动批处理
批处理是指 React 将多个状态更新合并为单个重新渲染的过程,以提高性能。更好的性能:减少不必要的重新渲染更一致的行为:无论在什么情况下,状态更新都有相同的批处理行为更简单的代码:不需要担心批处理的条件,React 会自动处理更好的用户体验:更流畅的界面更新注意事项自动批处理是默认开启的,不需要额外配置使用flushSync可以退出批处理,但应谨慎使用批处理不会影响逻辑正确性,只是优化了渲染性能与 React 18 的其他新特性(如并发渲染)完美配合。
2025-09-30 09:46:34
328
原创 Node.js 文件删除:完整指南
在 Node.js 中管理服务器端资源时,删除文件是一项常见任务。无论你是清理临时目录还是移除过时的日志,理解如何安全删除文件都至关重要。然而开发者常常忽视竞态条件或错误处理,导致程序崩溃或数据丢失。如何确保 Node.js 应用中的删除过程平稳无误?通过掌握 fs 模块的删除方法,并结合适当的检查和错误管理,你可以自信地删除文件而不会出现意外。本指南将带你从基本的 unlink 调用到批量删除,提供实用的代码示例、技巧和最佳实践。
2025-09-26 14:35:49
997
原创 Node.js Cluster:将你的单核应用变身多核性能猛兽!
Node.js 默认运行在单线程上,这意味着无论你的 CPU 有多少个核心,你的应用都只能使用其中一个。但此刻,正是 Node.js cluster 模块像超级英雄一样闪亮登场拯救世界的时刻!可以这样理解集群:想象一下,在一个繁忙的商店里,你不是只有一个收银员忙得不可开交,而是雇佣了多个收银员(工作进程),他们都在一位经理(主进程)的管理下协同工作。结果如何?客户满意度飙升,长队不再出现!
2025-09-26 11:30:00
465
原创 Node.js 代码与工作流优化技巧
✅ 使用 async/await 处理异步调用✅ 使用环境变量 (dotenv)✅ 实施适当的日志记录 (debug & morgan)✅ 对密码进行哈希处理 (bcrypt)✅ 使用 Redis 进行缓存 (redis)✅ 使用 Helmet 增强安全性✅ 使用 Compression 压缩加快响应速度✅ 使用 pm2 构建有弹性的 API✅ 实施速率限制 (express-rate-limit)✅ 进行测试 (jest, supertest)
2025-09-25 17:23:07
602
原创 Node.js 性能优化:实用技巧与实战指南
Node.js 性能优化是一个持续的过程,需要从代码、架构和运维多个层面综合考虑。通过实施上述技巧,你可以显著提升应用的响应速度、吞吐量和稳定性。记住黄金法则:先量化,再优化!使用性能分析工具识别真正的瓶颈,然后有针对性地进行优化。
2025-09-23 14:24:53
650
原创 Node.js Buffer 分配模式笔记
通过遵循这些模式,可以在保持 Node.js 应用程序安全性的同时,在真正需要时进行性能优化。✅默认使用✅永远禁用✅谨慎使用,特别是与 ArrayBuffer 交互时✅只有在性能分析证明需要且能保证安全时使用✅使用 lint 规则自动检测不安全模式✅注释说明所有的使用理由和安全保证。
2025-09-22 10:15:10
995
原创 Node.js 事件循环 (Event Loop) 核心笔记
掌握事件循环是关于构建一个准确的心智模型编写高性能、非阻塞的代码。准确预测异步代码的执行顺序。最重要的收获不要阻塞调用栈。理解微任务优先于宏任务。记住 Libuv 线程池是共享资源。对于重型 CPU 任务,使用 Worker Threads。有效地调试性能瓶颈和奇怪的行为。
2025-09-20 15:45:00
878
原创 Node.js 进程生命周期核心笔记
从“只是运行我的代码”转变为“管理这个进程将其视为一个动态的生命体:思考它的诞生(快速启动)、生命(稳定运行)和死亡(优雅关闭)。这是构建所有健壮、可靠、生产就绪系统的基础,也是区分初级开发者与高级工程师的关键。
2025-09-19 17:36:13
1194
原创 Node-Schedule 定时任务库详解
Node-Schedule 是 Node.js 中最简单易用的定时任务库之一,它提供了灵活的调度选项和简单的 API。对于大多数需要定时执行任务的场景,Node-Schedule 都是一个不错的选择。但在生产环境中,需要考虑错误处理、任务持久化、集群支持等高级特性,以确保任务的可靠执行。
2025-09-08 15:06:12
355
原创 React 17+ 与 React 17- 事件机制核心区别对比
方面核心目标性能优化(事件池)规模化与兼容性(隔离、直觉)开发者体验需要警惕事件池的陷阱更简单、更符合直觉,与原生事件行为更接近架构意义全局事件系统,易冲突局部事件系统,易于集成和隔离总而言之,React 17 的事件系统变革是一次着眼于未来的“现代化”改造,它解决了长期存在的痛点(事件池),并为大型应用和微前端架构提供了更稳固的基础。在异步代码里用事件对象,再也不用提心吊胆了。
2025-09-03 09:45:00
826
原创 React事件机制总结(基于5W2H分析法)
React事件机制通过合成事件和事件池设计,既保证了跨浏览器一致性,又大幅提升了性能。开发者需要了解这一机制的特点,特别是在异步场景中正确处理事件对象,避免因事件池回收而导致的访问错误。随着React 17+的发布,事件池机制已被移除,但合成事件的核心概念仍然是React事件系统的重要组成部分。
2025-09-02 10:54:44
487
原创 Speculation Rules API能用于SPA网站吗?
场景使用的规则目的对 SPA 的效益预获取路由代码块prefetch提前下载下一个路由的 JS/CSS 文件非常高。显著加快路由切换速度。预渲染外部 MPAprerender提前完整渲染一个外部传统网站中等。适用于跳出到独立站点的场景。预获取 API 数据prefetch提前获取下一个视图所需的数据理论可行,但实践复杂,需精心设计。对于 SPA,不要想着用prerender去预渲染整个路由。你应该优先考虑使用"prefetch"规则来提前获取代码分割产生的 chunk 文件。
2025-08-30 07:45:00
1666
原创 Speculation Rules API
Speculation Rules API 是将 Web 性能推向新高度的关键技术。它通过将传统的“点击-加载-等待”模式转变为“预测-准备-瞬时切换”模式,为多页面应用 (MPA) 提供了媲美单页面应用 (SPA) 的导航体验。
2025-08-29 13:39:34
1074
原创 navigator.clipboard
是浏览器提供的 Web API,用于安全地访问系统剪贴板。它替代了已废弃的方法,提供了更现代、更安全的剪贴板操作方式。
2025-07-09 12:00:00
1665
原创 微前端框架对比
运行时隔离(如wujie)与编译时优化(Module Fed)结合,例如wujie支持预加载资源 + 模块联邦共享依赖。:wujie的iframe物理隔离 > qiankun的Proxy沙箱 > micro-app的Scoped CSS。:iframe方案(wujie)因原生隔离,比Proxy代理(qiankun)内存低20%。:micro-app/wujie原生支持Vite,qiankun需插件且兼容性差。:金融场景首选iframe方案(wujie),避免Proxy沙箱逃逸风险。
2025-07-08 13:29:17
1472
原创 圈复杂度 (Cyclomatic Complexity)
圈复杂度是衡量程序代码复杂度的指标,由McCabe于1976年提出。它通过控制流图的独立路径数量评估代码复杂度,数值越高表示代码越复杂难维护。计算方法包括通用公式(E-N+2P)和简化方法(判定节点数+1)。评估标准将1-10视为简单,30+为极高风险。降低复杂度的方法包括:函数分解、多态替代条件判断、策略模式等。ESLint等工具可自动检测复杂度。合理控制圈复杂度能显著提升代码质量。
2025-06-29 06:15:00
836
原创 ESM 中的符号绑定 (Symbol Bindings)
在 ECMAScript 模块 (ESM) 系统中,符号绑定是指模块导出和导入的变量、函数或类在模块间的连接方式。ESM 使用静态绑定机制,与 CommonJS 的动态绑定有显著区别。
2025-06-28 09:15:00
320
原创 HTML inputmode 属性详解
inputmode是一个 HTML 属性,用于指定用户在编辑元素或其内容时应使用的虚拟键盘布局类型。它主要影响移动设备和平板电脑的输入体验。
2025-06-27 09:00:00
426
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅