自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(12)
  • 收藏
  • 关注

原创 langchain 1.0实现AI Agent 接入MCP实战

本文介绍了一个基于React+TypeScript+Ant Design的前端与Node.js+Express后端的全栈项目技术架构。后端采用LangChain框架集成硅基流动和阿里云百炼大模型接口,并实现了天气查询、搜索引擎、CSDN资讯获取等功能调用,以及12306票务查询、万相2.5图像视频生成等MCP服务。文章详细说明了Node.js后端的搭建过程,包括TypeScript环境配置、nodemon自动重启、Express服务初始化等步骤,重点介绍了基于LangChain的Agent架构设计,包含模型

2026-02-12 16:41:39 655

原创 浏览器缓存与离线缓存

浏览器缓存分为HTTP缓存和本地存储两类。HTTP缓存通过响应头控制,包含强缓存(Cache-Control)和协商缓存(ETag/Last-Modified),前者直接使用本地资源,后者需向服务器验证。本地存储包括Cookie、LocalStorage等,用于业务数据缓存。缓存资源会存储在内存(快速访问)或硬盘(大文件)。建议静态资源长期缓存,动态数据不缓存。

2025-09-03 16:01:50 1240

原创 浏览器渲染优化-----Editing

本文摘要:浏览器渲染流程包括HTML解析为DOM树、CSS解析为CSS树、JavaScript执行,最终合并为渲染树并进行布局和绘制。关键点包括:1) CSS会阻塞DOM渲染和JS执行;2) JS会阻塞DOM解析和渲染;3) 浏览器一帧完整流程包含宏任务、微任务、requestAnimationFrame回调、布局、绘制和合成;4) 浏览器会优化合并同批次宏任务以降低重绘次数;5) 强制渲染发生在读取需要实时布局信息的属性时。文章还介绍了进程架构、页面生命周期状态以及服务器端渲染与客户端渲染的区别。

2025-08-29 17:17:25 676

原创 前端项目工程化新建

本文介绍了前端项目开发中常用的工具链配置流程,包括: 环境搭建:通过nvm管理Node版本,使用Vite创建Vue3/React项目(支持npm/yarn/pnpm) 代码规范工具配置: ESLint:安装核心包及TS相关插件,配置.eslint.config.cjs Prettier:安装核心包,配置.prettier.config.cjs StyleLint:安装标准规则集和SCSS支持,配置.stylelintrc.json 解决StyleLint常见的"Unknown word"

2025-08-14 14:21:00 914

原创 .d.ts 和.ts 文件

摘要: TypeScript 使用 .d.ts 声明文件描述 JavaScript 类型信息,.ts 文件编写实际代码。.d.ts + .js 组合近似于 .ts 文件的功能,二者关键区别在于: .ts 文件同时包含类型和实现,编译时自动校验一致性; .d.ts + .js 类型与实现分离,需手动维护同步。 .d.ts 的典型应用场景包括:为无类型 JS 库补充声明、定义全局类型、开发第三方库时提供类型支持。declare 关键字用于声明全局变量/函数/类等类型,常见于 .d.ts 文件,支持函数重载和命名

2025-08-08 15:24:14 484

原创 TypeScript类型学习

值到类型转换,extends类型条件,泛型,is关键字实现类型守卫,infer推断

2025-07-10 11:12:23 343

原创 JS原型链判断

构造函数有prototype属性,它指向的是一个对象,凡是用构造函数创建的实例都会有一个[[Prototype]]属性,它指向的就是构造函数的prototype。获取的是对象的[[Prototype]]属性值,可以使用JS中的Object.getPrototypeOf()实现。

2024-12-19 18:10:51 232

原创 js中箭头函数this指向问题

例如,对象方法中的this关键字会指向调用该方法的对象,但这个this并不是由对象本身创建的作用域,而是由函数调用的上下文决定的。:这是最外层的作用域,任何不在函数内部或者严格模式下不在块级作用域(例如if语句块)内的变量都被认为是全局变量,它们属于全局作用域。:在ES6模块中,每个模块都有自己的作用域,模块内部定义的变量和函数默认是私有的,不能被其他模块直接访问。:这是一种由函数定义的位置决定的作用域,无论函数在哪里被调用,它的词法作用域总是指向它被定义的地方。函数内部定义的变量只能在该函数内部访问。

2024-10-13 23:10:55 570

原创 docker部署前后端分离项目

前端:nginx部署静态页面,监听端口 80后端:Go部署,监听端口8080我需要使用浏览器访问ip地址80端口访问到index静态页面,同时对于一些网络请求也需要通过80端口进入到服务器。

2024-07-19 22:30:48 443

原创 使用github部署Vite打包的项目

vue项目部署在GitHub上介绍:使用pnpm包管理,通过在github线上打包,部署在线页面。

2024-07-18 23:17:29 977

原创 docker里的nginx虚拟主机域名问题

使用docker里的nginx想要实现如下效果访问www.[域名].com 是一个主页面index访问vo.[域名].com是一个副页面sub。

2024-07-17 22:52:18 339

原创 WSL2上使用docker安装nginx

WSL2上使用docker安装nginx。

2024-07-16 20:35:40 1903 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除