首页
友链
程序员的开发利器
免费AI网站分享
ShareAPI
前端库
MicroMatrix
明月别枝惊鹊,清风半夜鸣蝉
累计撰写
135
篇文章
累计创建
41
个标签
累计收到
2
条评论
栏目
目 录
CONTENT
以下是
David
的文章
2025-05-29
策略模式实战:优雅处理AI对话流式消息
前言 最近开发AI对话功能时,遇到了对话显示的复杂需求。该场景需要处理AI返回的流式数据,涉及多种判断逻辑:数据是否属于新增对话、是否为增量更新、是否涉及工具调用等。若仅使用if/else模式,代码会迅速臃肿且逻辑难以维护。为此,我通过设计模式重构了代码结构,最终采用策略模式成功解耦了各类判断逻辑。
2025-05-29
101
0
0
share
2025-03-08
你不知道的CSS之包含块
什么是包含块? 包含块(containing block),顾名思义,就是一个包含其他元素的“块”。但它可不只是一个简单的容器哦!它不仅影响子元素的位置,还会影响到**宽度、长度、内外边距(padding、margin)、甚至定位(position)**等各种CSS属性的计算。 例如,像下图一样,很
2025-03-08
23
0
0
thinks
2025-03-08
CSS属性计算过程
你是否了解 CSS 的属性计算过程呢? 有的同学可能会讲,CSS属性我倒是知道,例如: p{ color : red; } 上面的 CSS 代码中,p 是元素选择器,color 就是其中的一个 CSS 属性。 但是要说 CSS 属性的计算过程,还真的不是很清楚。 没关系,通过此篇文章,能够让你
2025-03-08
36
0
0
thinks
2025-02-28
PVE安装OpenWrt
摘要 一直以来家里的旧电脑闲置着,偶尔也会搞一下 Linux 系统。但是由于知识匮乏每次重新安装 Linux 系统很麻烦,就思考为啥不能像服务器运营商一样,每次重新安装系统就重置一下就好了。找了很久发现了 Proxmox 这个基于 debian 制作的虚拟机系统。如何安装查看我以往的文章,或许可以给
2025-02-28
20
0
0
other
2025-02-18
浏览器进程模型揭秘:渲染主线程与异步机制
浏览器的进程模型 何为进程? 程序运行需要有它自己专属的内存空间,可以把这块内存空间简单的理解为进程 每个应用至少有一个进程,进程之间相互独立,即使要通信,也需要双方同意。 何为线程? 有了进程后,就可以运行程序的代码了。 运行代码的「人」称之为「线程」。 一个进程至少有一个线程,所以在进程开启后会
2025-02-18
34
0
0
thinks
2025-01-24
React 组件通讯与插槽
摘要 本文总结几种常见的 react 组件通讯方式,帮助新手玩家快速完成开发任务。 父子组件通信 父组件传递数据给子组件: // ParentComponent.jsx import React from 'react'; import ChildComponent from './ChildCom
2025-01-24
37
0
0
share
2025-01-24
React 快速入门-核心语法
摘要 本人是一个 React 新手,目前工作中需要用到 React 的相关知识,所以初步做了了解。这里主要是分享平常使用的一些案例。本章节主要是 React 核心函数使用内容。 JSX 语法注意事项 基本使用 const element = <h1>Hello, world!</h1>; 注意事项
2025-01-24
18
0
0
share
2025-01-21
从零开始:构建并发布你的 npm 工具库及文档网站
在日常的前端开发中,经常会遇到文本处理,日期处理,文本转换等需求。通常是将它写到一个 utils 文件中。问题来了,每个项目都要处理,那么文件就要重复的复制,我是个懒人。想着用 rollup将它打包成一个 npm 插件,然后直接安装,之后局部引入来。这样就方便了,同时也只需要我需要的插件。这样一来随
2025-01-21
23
0
0
share
2025-01-12
深入浅出 UniApp:从 UI 组件到数据交互的完整项目配置
摘要 在日常的前端开发中,框架总是一波接着一波的出现。为了不落后在这个快节奏的更新中,学习框架要抓住重点。 这个框架是干什么的 uniapp是 dcloud 出品的一个跨越多端的前端框架,基于vue开发。使得用户可以编写vue一套代码部署在微信小程序、支付宝小程序、钉钉、app 和网页端。怎么听起来
2025-01-12
18
0
0
share
2024-12-18
前端开发者必备的 CSS 技巧与最佳实践
一行代码实现复杂设计和移除图片背景的方法 mix-blend-mode: multiply; 17 行代码实现骨架屏 *[loading='true'] > div:not([loading='true']) { background-image: linear-gradient(90deg,
2024-12-18
26
0
0
share
1
2
3
4
5
...
14