- 博客(177)
- 收藏
- 关注
原创 Agent+MCP 开发范式
本文主体是高大伟老师在datawhale的宣讲,精练易懂。辅以一些本人的看法,希望各位大佬一起交流指正。本人的代码实践传统智能体架构现在 Tools → MCP 进行规范MCP 改变了什么。
2025-12-24 21:17:08
409
原创 工作流应用范式
环节出错需要有 fallback 的逻辑通过可视化和预处理把数据向量化处理到最佳的状态,方便RAG的相关性搜索然后介绍了 Dify 的插件能通过赋能提高生产力可控、标准化背景:为了提高生产效率和产量原理(~工业化):将复杂的生产过程分解为多个标准化、重复性的简单步骤,并由不同的工人在流水线上轮流执行,从而加速产品的生产过程。
2025-12-24 11:49:50
647
原创 Agent设计模式与工程化
本文主体是老师在datawhale的宣讲。辅以一些本人的看法,希望各位大佬一起交流指正。标准化之后才能规模化提炼自己的知识框架、利用好自己作为用户的差异点案例:智能客服需要数据RAG、LLM、工具插入MCP、ECS或GPU资源安全性、治理、可观测性、如何基于私有化Coze/Dify开发?对问题提炼模版化的解决方案从而实现标准化的工程化。
2025-12-21 13:49:31
291
原创 MCP原理及实践
本文主体是锦恢老师在datawhale的宣讲。辅以一些本人的看法,希望各位大佬一起交流指正。同时你可以启动 Lab 仓库的 vite 开发服务器在 http://localhost:8030/wordMCP/ 检测交互效果。
2025-12-20 20:14:29
840
原创 腾讯菁英班跨端日历应用产品报告
月视图日历:按天选择日期,查看当天日程列表。日程列表:展示当天所有事件的标题、时间范围、备注等信息。核心字段:title、startTime、endTime、allDay、reminderMinutes、category、priority、status 等。核心字段:id、date(yyyy-MM-dd)、title、startTime(HH:mm 可选)、endTime(HH:mm 可选)、notes(可选)。流程 A:新增事件(Android)用户在新增/编辑界面填写信息并保存。
2025-12-18 00:58:37
816
原创 Agent概况
本没有路,走的人多了便有了路定义也是从共识来的Agent 同理,目前还没有具体的共识,任何一个非单次大模型调用的系统都有可能被称为Agent看一些大厂商的定义。
2025-12-16 16:32:47
900
原创 内存管理 - 内存泄漏 - 排查、预防策略
在浏览器环境下就是 V8引擎栈内存:存放原始类型值,生命周期短,不由GC回收而是由引擎自动弹栈堆内存:存放引用数据类型,由GC进行回收。
2025-12-16 08:18:34
612
原创 pnpm优化理念 - 幻影依赖、monorepo - 升级npm
pnpm 通过「内容寻址同时解决了 磁盘浪费、幻影依赖、monorepo 复用 三个核心问题。
2025-12-15 11:09:52
1053
原创 业务环境流程:开发->测试->预发布->灰度->生产
一般是内部人员的真实数据(test是QA和研发,现在是其他例如产品等)域名、环境等等都和 prod 一样。
2025-12-13 18:44:55
845
原创 字节工程营总结
需求:实现一个截屏工具我的目标:确保基本功能的基础上,首先优化工具的性能(因为本项目是以C++开发、如果不以性能为目标的话个人感觉用 Electron(Web+Node.js)更适合),提升工具的跨平台能力、多语言支持,优化代码的可维护性和可拓展性。
2025-12-10 15:37:06
1703
原创 useForm的设计理念随笔
useForm 内部维护了两个对象,一个是字段值存储 _formValues ,还有一个是表单状态存储 formState1. **字段级**UI(例如输入框):当用户 input 的时候,会引发 register 返回的 **onChange** 事件,其内部更新了 _formValues , **subjects** **广播**字段级变更事件,仅订阅了相关字段的组件会调用其内部对应字段的 setState ,从而触发最小范围的 **Fiber调度**2. **表单状态级**UI(例如loadin
2025-11-19 21:36:13
117
1
原创 异步请求选项、对象选项映射、层级选择
这个业务情景是有一个模态框,内部有很多选择器,是有层级关系的,需要异步请求选项(useAsyncList),且相应对象的时候还需要进行字段映射(通过开启labelInValue带上label后在useOptionsForSelect钩子里面进行分流处理)
2025-11-17 20:58:44
180
原创 组件value无法成功清空?
如果您也遇到了组件value无法清空的情况,您可以看看组件的相关setValue函数是不是将undefined识别为了无效值,导致想清空时传入undefined但是被过滤了没有成功更新组件值。
2025-11-09 09:59:41
116
原创 输入框无法onChange两种解决思路
onBlur={(e) => handleRateChange(e.target.value)} // 只在失焦的时候处理 ,因为用户后面去填写核销金额肯定会导致失焦。如果输入框用 onChange 去同步value的话很明显会碰到例如频闪、立即格式化等问题,那么如何解决呢。一种是通过防抖或者节流,设个debance然后通过ref去处理。还有一种是只在失焦的时候再去处理。
2025-11-08 23:24:42
175
原创 模态框的两种管理思路
第一种思路是以功能为聚合,例如点击按钮弹出模态框的话那么就写一个按钮组件,这种思路的优点是在一处进行管理功能,用到的时候只需要将按钮嵌入页面就好,但是可能没法在同一处管理某页面用到的所有模态框。还可以进一步简化,从打开和关闭维度看只有两个action,只不过打开和关闭的是不同的模态框,即不同的ModalState中的Key。第二种思路就是通过钩子函数内部对模态框的状态进行管理,那么外部调用只需要调用方法即可。在内部管理状态用到了Reducer统一管理多种模态框时的action、state。
2025-11-08 23:20:21
294
原创 美团内推招人
主包是这个部门的实习生,氛围很好,有想来的可以私信我简历,可以直接内推给ld,最好有前端经验,部门会给实习生分配较核心的任务,可以在实习期间学习到很多,base成都or北京。有想来美团财务科技前端部门实习的uu吗?内推码:G25VKEL。
2025-10-28 17:13:50
136
原创 预检查和表单提交
今天在写一个需要预检查的表单提交页面时,我把预检查冗在了提交函数里面导致很耦合且状态不分明,后面我把预检查和提交函数分开,将precheck和submit分开那么形成层级衔接关系而不是覆盖关系,感觉明了不少,同时附着Form上的brules用bv (validation) 检查实现数据层和服务层的双保险。
2025-10-23 22:43:36
209
原创 父子优先层级选择器-编辑及创建双状态-异步加载选项
最主要是要想明白:如果用副作用监听,那么在编辑态的时候,从父组件加载数据会导致如果B是监听A的一个子,那么A的加载数据会引起B的加载数据被覆盖。其中,最上层的选项不受影响,所以init模式就好,但是下面的子会随着父而更变选项,所以得focus,每次聚焦的时候都出发搜索。所以最好的做法是用onChange,只在用户调起的时候才会影响,而初始化数据的话写个副作用监听visible就好。但上面的还不是最优最简洁的,其实最好是传一个异步函数进去去请求选项List,而不是自己开个状态变量去维护管理。
2025-10-23 10:51:21
304
原创 CR后的反思、编辑表格实现
首先很严肃的一点是我之前一直靠着Vibe Coding提高生产效率,但是通过CR发现了不少问题,虽然前期开发可能很速,但是可能一直会埋坑,会导致后面重构的过程花费时间更多,原因是因为我目前有些方面理解不到位导致了对于AI的CR没有很成功,所以目前我在尝试完全手写,虽然效率低了但是还是学到了不少东西。其次是对于数据管理的理解,之前经常还想着开一些状态变量去管理,但是这样的风险高,所以能合理对表单等数据进行封装,实现数据的点对点更新和管理是很重要的。就贴一段关于编辑表格的代码,大家一起交流指正。
2025-10-21 21:56:11
290
原创 状态上移实现记忆化&组件库兼容&Disable逻辑
首先是想实现已经点击的单据跳转后变灰色,那么就需要记忆化,需要在列配置组件的上层去设置State,并且将回调函数在父组件进行统一管理,那么就实现了解偶不需要子组件去考虑需要做什么处理。第二个问题就是组件库样式不兼容的问题,一般就是全局样式与局部的冲突,解决的话要不全局转局部,要不优先级覆盖等等,我这次遇到的问题是图片不居中,原因是盒子。太久没记了,就写两个在开发中遇到的小问题。我在app.scss里面设置了。然后在列配置里面处理样式。
2025-10-11 10:33:54
191
原创 样式冲突修复组件
那么解决方法就是将和扰乱样式相关的样式从 app.scss 中提取出来,单独写一个组件去实现,然后针对特定的页面进行外套,从而不影响其他页面,这个过程可以先写一个单独组件,然后去路由守卫中进行分支套层。在我写一个页面的时候分页器样式被扰乱了,通过查看元素发现样式被覆盖了,是因为有协作者在开发其他页面的时候将一些样式加在了 body 样式里面了,这个标签选择器将我的组件内部的样式覆盖了。注意要 100% 确保子组件的空间占据。那么具体使用的时候就去外面套一层例如。
2025-09-29 16:51:06
247
原创 经验随笔-
一般 api 和 constance 放一个文件夹,页面放一个文件夹,那么像 i站 和 pc端 如果有逻辑是复用的就可以从 前者文件夹 中读取,有点类似于安卓开发中的 逻辑和UI 区分开发从而实现复用。在迁移过程中可能有些类型和枚举已经前人迁移过了,但是直接搜 enum 类型名 并不一定搜得到,最好是问前人或者是顺带搜搜其属性名或值,但是其实我感觉最好是带着 注释 迁移,那么就像代码随身带着一个标签一样。- 一般很少写内敛样式,一般是用组件的属性进行定义,或者是 Tailwind 来封装。
2025-09-28 10:52:44
253
原创 枚举管理-跨站统一
像如果 i站 和 pc 都用到的就放到 business 里面,这样就实现了统一,而且到时候维护的话就去一个地方维护就好。具体使用到 react 中写胶水函数或者模块组件。
2025-09-22 15:42:18
302
原创 如何在接手新项目时快速上手?
接着遇到具体问题时,很容易碰到的问题就是不知道有一些需求之前是否已经处理过了,那么最直接的办法就是去找对接人、翻对接文档,其次就是可以去搜索里面搜例如。有时候你遇到有些类型定义和你的需求接口并不是很吻合,那么可能就需要写胶水函数用于将之前的base定义转换成你现在接口需要的模样。有时候我们需要对一个项目进行迭代、重构,但是这个项目之前并不是我们经手,那么就需要对这个项目的状况进行快速了解。等等,然后就是看看依赖模块,例如我最近在迁移过程中需要一个转换为时间戳的函数,刚好看到了 dayjs 模块依赖。
2025-09-20 22:02:57
199
原创 错误收集与处理
就像 Promise 链一样,只不过不是往下等 catch或是then的rejected函数 ,而是往上,由上面收集并决策是否与 UI 层交互。
2025-09-09 10:54:25
233
原创 抽象Hook简化统一对object url的管理
像 useModal , useMessage , useMessageHandle 一样写一个 object URL。现在在 utils 下面写了一个 object-url.ts。原先是将相关逻辑在录屏组件挂载和清销生命周期进行手动处理。向外 expose 了两种使用模式。
2025-09-09 10:36:41
348
原创 数据传输优化-异步不阻塞处理增强首屏体验
将原先先把所有必须的内容拿到再弹出弹框变成先加载弹窗,具体里面要用到视频挂载URL的地方其实就是生成二维码的地方,那么写成 'generating' 来优化交互体验,那么就需要将原先 props 传输 recording 变成一个 Promise 来异步处理。背景:主 project 页面中会将视频存储到云端后获得 ID ,然后用 ID 调用 后端API POST到数据库后拿到挂载页面URL,接着传入视频分享组件(由于视频分享子组件的目标是分享视频挂载页面,所以前置步骤不能少)在 watch 中回调。
2025-09-05 11:21:11
538
原创 nextTick细节
所以在具体开发时考虑到 Node.js 和 async/await 语法的细节,建议用明确的同步机制来确保代码的可预测性。下半部分在 async/await 中执行:代码通过 await 恢复执行时 Promise微任务队列会有不同的优先级。原因:Node.js版本差异 和 上下文环境 的影响。上半部分:nextTick 是微任务队列首的。
2025-09-01 13:57:11
207
原创 vercel上线资源无法加载
上一次出现类似问题是在更新游戏引擎方法后本地可以跑但是上线没有成功,当时是因为 runner.html 是在部署时通过脚本从远端仓库拉取的,所以解决方案:1.更新远端仓库(但是这个仓库是由游戏引擎组管理,所以正确做法是沟通)2.但是当时由于需求有点紧急,所以我得先自己模拟实现,那么就去构建脚本中实现添加。那么我的直觉就是 COEP 导致的资源无法加载,但是我明明使用了 useExternalUrl 函数来解决,而且当我去看发现连 DOM树 构建都受阻了,于是我尝试先修复问题2。2.mqq第三方库报错。
2025-09-01 13:29:28
484
原创 深入JS~
then 可以接收两个参数,第一个是处理成功的函数,第二个是处理错误的函数。.catch 是 .then 第二个参数的简便写法,但是它们用法上有一点需要注意:.then 的第二个处理错误的函数捕获不了第一个处理成功的函数抛出的错误,而后续的 .catch 可以捕获之前的错误。Promise A+ 规范规定:如果 .then 的回调返回值和当前生成的新 Promise 是同一个对象,会抛出 TypeError ,也就是 “Chaining cycle detected for promise”
2025-09-01 11:53:58
963
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅