- 博客(3436)
- 资源 (11)
- 收藏
- 关注
原创 JS异步请求Fetch对象为什么json()方法需要使用await关键字?(fetch API await json await)因为返回的是Promise对象(Fetch与Axios对比)
方法返回一个Promise对象,而非直接返回解析后的JSON数据。这是现代JavaScript中Fetch API的标准行为,需要使用关键字(或方法)来获取实际解析后的数据。设计原理分析异步JSON解析的必要性时序图#mermaid-svg-7Jig7rZhpCPACWbe {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-7Jig7rZhpCPACWbe .erro
2025-05-20 16:58:02
413
原创 【大模型MCP协议】MCP官方文档(Model Context Protocol)一、开始——2. 快速入门——服务端开发者
https://modelcontextprotocol.io/quickstart/server在本教程中,我们将构建一个简单的 MCP 天气服务器,并将其连接到主机 Claude for Desktop。我们将从基础设置开始,然后逐步扩展到更复杂的用例。许多大语言模型(LLM)目前无法获取天气预报和严重天气警报。让我们用 MCP 来解决这个问题!我们将构建一个服务器,暴露两个工具: 和 。然后我们将把服务器连接到一个 MCP 主机(本例中为 Claude for Desktop):MCP 服务器可以提供
2025-05-20 14:09:35
383
原创 《黑马前端ajax+node.js+webpack+git教程》(笔记)——node.js教程+webpack教程(nodejs教程)
if (err) {else {console.log('写入成功')})if (err) {else {})/g表示全局匹配默认导出和导入命名导出和导入唯一出口文件index.js不是必须的,如果不存在,就会到package.json中去找定义的入口文件(main属性指定的入口文件)npm i具体参考文章:webpack介绍(现代JS应用静态模块打包工具,在内部构建依赖图,映射项目所需模块,生成打包后的文件)webpack.config.js。
2025-05-19 23:45:27
932
原创 reboot命令和systemctl reboot命令区别(后者优雅重启)(Systemd系统中reboot实际上是systemctl reboot的软链接)
都是用于重启 Linux 系统的命令,但它们的实现方式和行为存在一些关键区别。是一个传统的 Linux 命令,最早用于 SysVinit 或早期的初始化系统(如。是 Systemd 系统管理器的一部分,专为现代 Linux 发行版设计。(如 CentOS 7+、Ubuntu 16.04+)中,它直接向内核发送重启信号,绕过现代服务管理器(如。的软链接(见 [2] 和 [10])。(如 CentOS 6 或更早)中,优雅地管理服务关闭和系统重启流程。进程负责关闭服务并重启系统。(运行级别 6),由。
2025-05-19 13:40:36
280
原创 前端sourcemap介绍(Source Map、eval-source-map)(将编译、压缩后的代码映射回原始源代码的技术工具)Base64 VLQ
Source Map 技术是现代前端开发中不可或缺的调试工具,它在保持代码优化的同时提供了良好的调试体验。合理使用 Source Map 可以显著提高开发效率和代码质量,但也需要注意在生产环境中的安全配置。随着前端技术的不断发展,Source Map 也将继续演进,为开发者提供更好的调试体验。
2025-05-18 21:00:05
591
原创 BootCDN介绍(Bootstrap主导的前端开源项目免费CDN加速服务)
BootCDN是Bootstrap中文网联合支持并维护的前端开源项目免费CDN加速服务,致力于为Bootstrap、jQuery、React、Vue.js等优秀的前端开源项目提供稳定、快速的免费CDN加速服务。BootCDN所收录的开源项目主要同步于cdnjs开源项目仓库,目前已收录超过4387个前端开源项目。BootCDN作为国内领先的前端开源项目CDN加速服务,为开发者提供了强大、稳定、免费的资源加载解决方案。随着前端技术的不断发展,BootCDN也在不断扩充资源库,支持越来越多的优秀开源项目。
2025-05-17 22:28:57
841
原创 JS JSON.stringify介绍(JS序列化、JSON字符串 )(遍历输入值的所有可枚举属性,将其转换为文本表示)缓存序列化、状态管理与时间旅行、replacer
/ 序列化内部过程伪代码实现// 检查循环引用// 应用 replacer 函数(如果提供)// 根据数据类型处理${// 序列化内部过程伪代码实现 function pseudoStringify(value , replacer , space) {// 检查循环引用 const seen = new WeakSet();// 应用 replacer 函数(如果提供) if(typeof replacer === 'function') {
2025-05-17 16:57:51
686
原创 Webpack DefinePlugin插件介绍(允许在编译时创建JS全局常量,常量可以在源代码中直接使用)JS环境变量
DefinePlugin是Webpack生态系统中的核心插件,内置于Webpack本身。该插件允许在编译时创建全局常量,这些常量可以在源代码中直接使用。本质上,DefinePlugin执行的是一种"查找和替换"的操作,在编译阶段将代码中的变量替换为指定的值。关键在于,这种替换是在编译时完成的,而非运行时,这带来了显著的性能优势。通过合理使用DefinePlugin,可以实现代码的环境适应性、提高性能并简化配置管理流程,为现代前端工程化提供有力支持。
2025-05-17 14:18:58
773
原创 npm cross-env工具包介绍(跨平台环境变量设置工具)
cross-env是一个简单而强大的npm工具包,它解决了在不同操作系统平台上设置环境变量的一致性问题。无论你使用的是Windows、macOS还是Linux,cross-env都能确保你的npm脚本能够以相同的方式运行。简化开发流程,提高团队协作效率消除平台差异,实现"编写一次,随处运行"与现有工具链轻松集成代码简洁,性能良好通过合理使用cross-env,可以显著提升多平台项目的开发效率和代码可移植性,减少因环境差异导致的问题。
2025-05-16 23:24:23
1194
原创 docker.sock作用(docker sock)(Docker客户端与Docker Daemon守护进程通信的接口)/var/run/docker.sock
(本地 Unix 套接字),而非 TCP 端口。如果容器需要动态管理 Docker(如 CI/CD 工具、自动化脚本),挂载该套接字是必要的。参数将宿主机的套接字文件挂载到容器内,容器内的进程可以直接与 Docker 守护进程通信。,Docker 实现了高效的本地通信机制,是 Docker 生态中不可或缺的组件。与 Docker 守护进程交互,发送请求(如创建容器、管理镜像等)并接收响应。是 Docker 守护进程(Docker Daemon)的。命令行工具与 Docker 守护进程交互时,默认使用。
2025-05-16 23:19:23
745
原创 求职困境:开发、AI、运维、自动化
你的技能组合是典型的「T型人才」——既有广度又有多个深度支点。建议优先寻找能让你发挥「技术架构设计」能力的岗位,这类岗位对复合型人才的需求正在快速增长。同时,持续在GitHub维护技术案例,这将成为你区别于普通工程师的核心竞争力。
2025-05-16 13:51:50
888
1
原创 如何打造MVP(最小可行性产品)(MVP=核心功能+快速验证+用户反馈+持续迭代)
通过以上步骤,你可以高效验证产品假设,降低风险,同时为后续商业化打下基础。,同时避免过度设计。打造MVP的关键在于。
2025-05-16 13:48:06
825
原创 Node.js package.json常用配置字段(Node.js配置、Node项目配置、Node配置)(package-lock.json、yarn.lock)
package.json 作为Node.js项目的核心配置文件,其丰富的字段设置影响着项目的开发、构建、测试和发布全生命周期。掌握这些配置能力,可以构建更加健壮、可维护的Node.js应用。随着Node.js生态的发展,package.json的配置能力也在不断扩展,跟进最新的最佳实践对提升项目质量至关重要。
2025-05-16 11:41:50
592
原创 python venv不适合变更路径(路径变更)的几种解决方案(venvpack、pip download、pip install --no-index --find-links=packages)
而不是跨机器或跨路径的迁移。它的路径依赖特性确实会导致迁移时的不便,但有一些方法可以缓解或解决这个问题。的设计目标是本地开发隔离,而非跨机器迁移。,其中包含 Python 解释器的符号链接(软连接)和依赖包。Docker 容器完全独立于宿主机环境,解决了路径依赖问题。会自动修复路径问题,确保虚拟环境在新路径下正常运行。这种方法完全避免了路径问题,但需要联网下载依赖包。如果路径不一致,还需要检查虚拟环境中的脚本(如。如果目标机器的 Python 环境路径与源机器。)是否有硬编码路径,并手动替换为新路径。
2025-05-13 14:36:42
663
原创 .less代码介绍(css代码的超集)(最终需要编译成标准CSS文件,浏览器才能解析执行)lessc、Gulp
它扩展了 CSS 的功能,使其具备变量、混合(mixin)、嵌套、运算、函数等特性,从而让 CSS 更易维护、扩展和组织。Less 本质上是 CSS 的“超集”,最终需要编译成标准的 CSS 文件,浏览器才能解析执行。定义变量,存储常用值(如颜色、字体大小),方便全局复用和统一修改。将一组样式定义为“混合”,并在其他选择器中调用,实现代码复用。Less 代码需要通过编译器转换为标准 CSS。提供内置函数(如颜色调整、数学计算等),动态生成样式值。支持将子选择器嵌套在父选择器中,避免重复书写层级结构。
2025-05-12 22:56:31
509
原创 为什么在Webpack 5 中,直接添加new CssMinimizerPlugin()到optimization.minimizer数组而不取消注释...语法,会导致JavaScript压缩失效?
通过正确配置,你可以充分利用 Webpack 的优化能力,提升应用性能。,最终输出的 JS 文件体积会比预期大,影响性能。注意:从 Webpack 5.70.0 开始,来压缩 JavaScript 代码。是 Webpack 内置的优化器,在 Webpack 5 中,如果你。,导致 JavaScript 代码。Webpack 5 默认使用。Webpack 会保留默认的。,则需要显式保留它。
2025-05-12 20:42:32
820
原创 【大模型MCP协议】MCP官方文档(Model Context Protocol)一、开始——1. 介绍
开始使用模型上下文协议(MCP)C# SDK已发布!查看其他新功能MCP是一个开放协议,它规范了应用程序如何向LLM提供上下文。可以将MCP想象成AI应用的USB-C接口。就像USB-C为您的设备提供了连接各种外设和配件的标准方式一样,MCP提供了一种标准方式来连接AI模型与不同的数据源和工具。
2025-05-12 17:43:14
914
原创 JS正则表达式介绍(JavaScript正则表达式)
JavaScript正则表达式是一种强大的文本处理工具,掌握其基本语法和高级技巧可以大幅提高文本处理效率。正则表达式由元字符、量词、分组等组成,通过合理组合这些元素,能够实现复杂的模式匹配需求。正确理解和使用标志(flags)可以让正则表达式匹配更精确、更高效,适应不同的文本处理需求。在实际应用中,需要注意正则表达式的可读性和性能问题,避免过于复杂的模式导致难以维护或性能下降。
2025-05-10 23:21:25
1162
原创 MiniCssExtractPlugin插件介绍(提取css)(将CSS提取出来,单独打包成文件,能将样式与脚本分离,优化页面加载性能)(旧版:extract-text-webpack-plugin)
MiniCssExtractPlugin是webpack生态系统中的一个重要插件,专门用于将CSS提取到单独的文件中,而不是将其打包在JavaScript文件中。该插件基于webpack v5构建,能够为每个包含CSS的JS文件创建对应的CSS文件,并支持CSS的按需加载和SourceMap。支持异步加载CSS无重复编译,性能更优更易于使用和配置专为CSS设计的功能// 插入到指定元素后})// 自定义插入函数// 将链接标签插入到指定元素之前})})
2025-05-10 16:04:40
964
原创 CSS Modules介绍(CSS模块、样式模块)(通过自动创建唯一类名,确保样式在组件级别上被封装,解决了全局样式冲突问题)(将CSS文件视为模块,可以被导入和使用).module.css
CSS Modules 是一种用于模块化和局部化 CSS 的系统。它通过自动创建唯一的类名,确保样式在组件级别上被封装,从而解决了全局样式冲突的问题。CSS Modules 将 CSS 文件视为模块,使得样式可以像 JavaScript 一样被导入和使用。CSS Modules 提供了一种平衡性能与开发体验的 CSS 模块化解决方案。它保留了传统 CSS 的熟悉语法,同时解决了全局命名冲突问题。对于中大型项目和组件库开发,CSS Modules 是一个值得考虑的技术选择。
2025-05-09 23:18:34
906
原创 何时需要import css文件?怎么知道需要导入哪些css文件?为什么webpack不提示CSS导入?(导入css导入规则、css导入规范)
这种模块化的CSS导入方式可能一开始不习惯,但它使CSS的管理更加清晰,也是现代前端开发的主流方式。可是即使我不导入它也没有提示,也没有报错信息,但是我确实是需要导入的,因为我需要打包,但是它不提示我要把哪些css文件导入到哪些css,这不是很奇怪吗?在前端工程中使用webpack打包CSS时,确实需要在JavaScript文件中导入CSS文件,这可能会让人感到困惑。你提出了一个很好的问题!直接导入 CSS 文件。在 JavaScript 中,是否需要导入 CSS 文件取决于具体的使用场景和项目需求。
2025-05-09 22:32:38
1084
原创 html object标签介绍(用于嵌入外部资源通用标签)(已不推荐使用deprecated,建议使用img、video、audio标签)
<object> 标签是 HTML 中用于嵌入外部资源的通用机制,支持通过 data 和 type 属性加载资源,并通过 <param> 标签传递配置信息。其核心属性包括 data(资源 URL)、type(MIME 类型)、width 和 height(尺寸)以及 name(对象命名)。<object> 标签可用于嵌入图像、音频、视频、PDF 等多种资源,并通过回退内容处理浏览器不支持或加载失败的情况。尽管 <object> 标签功能强大,但由于兼容性问题,
2025-05-09 11:17:32
978
原创 富文本编辑器如何禁止用户嵌入iframe?(禁用iframe、禁止iframe)
Quill 默认不允许插入 iframe,需通过自定义模块扩展支持,但可直接忽略 iframe 插入逻辑。如果用户直接操作 DOM(如通过开发者工具),可通过 JavaScript 监听并移除 iframe。如果用户使用富文本编辑器(如 TinyMCE、Quill、CKEditor),可配置编辑器禁止插入。指令限制 iframe 的来源,间接阻止用户插入 iframe。通过以上方法,可以有效防止用户在你的网页中插入。仅允许加载同源的 iframe。要禁止用户在你的网页中插入。标签的 HTML 内容。
2025-05-09 10:44:00
860
原创 iframe介绍(HTML内联框架元素,允许HTML文档嵌入另一个独立HTML文档)(Web Components、Server-Side Integration)微前端架构
iframe作为Web平台的基础构建块之一,在特定场景下仍然具有不可替代的价值。通过深入理解iframe的工作原理、掌握安全最佳实践、灵活运用通信机制,可以在现代Web开发中安全高效地使用iframe技术,构建复杂而强大的Web应用。
2025-05-08 18:13:11
815
原创 Nginx日志配置中的main格式详解(Nginx main格式日志)log_format(记录HTTP请求关键信息,便于后续分析和故障排查)access.log(需要配置日志切割以避免文件过大)
main格式是Nginx日志配置中的核心元素,通过合理配置可以记录全面的请求信息,为系统监控、性能分析和安全审计提供重要数据支持。根据实际需求定制main格式,能够在保障性能的同时获取最有价值的访问信息。
2025-05-08 16:03:02
788
原创 Cursor降智找不到文件(Cursor降智)
解决办法,删除codebase index,最好再把那个Index new folders by default给设置为Disabled。这样设置貌似就不会出现找不到文件的情况了。
2025-05-08 15:46:00
797
原创 css样式优先级规则(css优先级)(特异性值specificity、避免!important声明、过度特异性、特异性战争、BEM命名约定、原子化CSS框架、chrome调试优先级问题)
掌握CSS优先级规则是前端开发的基础技能。遵循适当的命名约定、保持特异性较低、避免过度嵌套和不必要的!important,能够构建出更易维护和扩展的样式系统。现代CSS架构如BEM、CSS Modules和原子化CSS框架都能有效减轻优先级冲突问题。
2025-05-07 22:30:57
653
原创 vscode预览模式(点击文件时默认覆盖当前标签,标签名称显示为斜体,可通过双击该标签取消)覆盖标签、新窗打开
预览模式的主要目的是帮助你快速浏览文件,而不会让你的标签栏变得混乱不堪。:如果你在预览模式下打开了一个文件,然后又单击了另一个文件,那么新单击的文件会替换掉当前处于预览模式的那个标签页。也就是说,VS Code 不会为每个单击的文件都打开一个新的标签页,而是会重用当前的预览标签页。如果你想让这个文件“常驻”在你的标签栏中,就需要通过双击标签或编辑文件来“固定”它。在 VS Code 中,当你单击文件浏览器(例如,资源管理器侧边栏)中的某个文件时,它默认会以“预览模式”打开。
2025-05-07 10:56:45
935
原创 HtmlWebpackPlugin插件介绍(构建过程自动生成HTML文件,将打包后的资源如JavaScript、CSS文件注入到HTML中)html-webpack-plugin、chunks
在前端工程化的世界中,Webpack已成为构建工具的标配。而在众多Webpack插件中,HtmlWebpackPlugin扮演着至关重要的角色,它解决了HTML文件与打包资源之间的关联问题。本文将深入剖析HtmlWebpackPlugin的工作原理、核心功能及实践应用。HtmlWebpackPlugin的强大之处在于支持自定义HTML模板。可以使用各种模板引擎,如ejs、pug等,也可以使用普通的HTML文件。
2025-05-06 23:03:00
1141
原创 支持录制的网页自动化测试工具推荐(网页测试网页、录制测试录制、录制网页录制、页面录制页面)(Katalon Studio、Selenium、Appium、Playwright、Puppeteer)
这些工具可根据项目需求组合使用,例如用Katalon生成脚本,结合Screenity录制操作视频,实现测试全流程覆盖。
2025-05-06 15:17:45
809
原创 webpack介绍(现代JS应用静态模块打包工具,在内部构建依赖图,映射项目所需模块,生成打包后的文件)webpack.config.js、创建项目步骤、新建项目步骤
通过以上步骤,即可完成Webpack的安装和基本使用,从零开始构建一个简单的前端项目。
2025-05-03 16:51:13
861
原创 nodemon命令介绍(Node.js代码监视并自动重启工具、代码监控代码、监控文件监控)重启node重启(注意:Node.js v22引入了稳定内置监视模式,提供更集成、更高效文件监控机制)
Nodemon 是一个强大的 Node.js 开发工具,专为解决开发过程中频繁重启应用的痛点而设计。它能够自动监测项目文件变化,并立即重启应用,让开发者专注于代码编写而非重复性操作。跨平台兼容Nodemon 作为 Node.js 开发的核心工具,极大地提升了开发效率和体验。它简单易用却功能强大,适应各种开发场景和需求。随着 Node.js 生态的不断发展,Nodemon 也在持续完善和更新。
2025-05-01 23:37:56
1082
原创 npm命令介绍(Node Package Manager)(Node包管理器)
npm (Node Package Manager) 是JavaScript运行时环境Node.js的默认包管理工具,为开发者提供了一种高效管理项目依赖的方式。作为世界上最大的软件注册表,npm包含了超过100万个开源包,极大地促进了JavaScript生态系统的繁荣发展。"start": "node server.js", // 启动应用"dev": "nodemon server.js", // 开发模式"build": "webpack --mode production", // 构建生产版本。
2025-05-01 23:14:18
1377
原创 npm宿主依赖、宿主环境依赖(peerDependencies)(指由宿主环境提供的依赖)
宿主环境依赖(peerDependencies)是指包声明自身与哪些包兼容,但这些包应由使用者(宿主环境)提供,而非包自身安装。这种依赖类型主要用于插件、组件库等场景,避免核心包被重复安装导致的冲突问题。宿主环境依赖是一种确保插件、库与核心框架版本兼容性的重要机制,合理使用可避免版本冲突和重复安装问题,提高代码质量和稳定性。宿主环境依赖在package.json中通过。
2025-05-01 21:46:46
760
原创 npm开发依赖、开发环境依赖(仅在开发阶段需要,生产环境不需要的包)(npm install xxx --save-dev、npm i xxx -D、npm install --production)
开发依赖是指仅在项目开发阶段需要使用的包,而在生产环境运行时不需要的包。这些包通常用于辅助开发过程,如测试工具、构建工具、代码格式化工具等。开发依赖的合理使用可以优化项目结构,明确区分开发工具与实际运行代码,提高项目的可维护性和部署效率。安装开发依赖需要使用。
2025-05-01 21:07:15
1020
原创 Node.js后端与现代前端的项目结构(全栈项目组织方式、代码目录、项目目录、后端目录、前端目录)react目录结构
│ ├── shared/ # 共享代码│ │ │ ├── types/ # 共享类型定义│ │ │ ├── utils/ # 共享工具函数│ │ │ └── constants/ # 共享常量│ ├── backend/ # 引用shared包│ └── frontend/ # 引用shared包。
2025-05-01 17:25:52
471
原创 node.js模块化步骤(各标准区别)CommonJS规范、AMD规范、UMD规范、ES Modules (ESM)
前后端建议统一使用ESM。
2025-05-01 16:20:35
1080
原创 模型上下文协议MCP协议(Model Context Protocol)未来应用场景分析(多智能体协作A2A协议)
MCP协议正推动AI从“孤立模型”走向“生态互联”,未来将在各行业催生大量创新应用。普通公司可通过云平台接入、垂直工具开发和生态合作参与其中,同时需关注安全、合规及人才培养。对于个人而言,掌握MCP相关技能(如API设计、AI集成)将显著提升职业竞争力。
2025-04-29 17:38:06
905
原创 html表格(table元素tr表格行td数据单元格th表头单元格thead头部tbody主体tfoot底部caption标题rowspan 跨行合并colspan跨列合并)colgroup定义列组
HTML表格不仅是展示数据的有效方式,掌握其合并单元格、结构布局和样式技巧,能构建出既美观又功能强大的数据展示界面。在移动设备上,标准表格可能会溢出屏幕。HTML 表格是展示结构化数据的强大工具,通过。使用CSS美化表格更为灵活且符合现代标准。结合所有技术创建一个功能完备的表格。定义表头单元格,通常会加粗显示。/* 在每个单元格前显示标签 *//* 奇偶行不同背景色 *//* 在小屏幕隐藏表头 */定义普通的数据单元格。/* 鼠标悬停效果 *//* 移动设备适配 */组织表格的头部区域。
2025-04-29 15:52:31
1001
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
CMD_right_click_key_menu_with_administration.reg
2019-08-29
Intel-RealSense-D400-Series-Datasheet
2019-07-29
为什么C++对整型常量的指针用const_cast并修改值后,出现了两个不一样的值?
2023-08-23
TA创建的收藏夹 TA关注的收藏夹
TA关注的人