自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Linux常用指令

本文总结了Linux常用命令操作指南,涵盖文件目录管理、系统信息、用户权限等核心功能。文件操作包括ls查看、cd切换、mkdir创建目录等;系统管理涉及date时间设置、uname版本查看;权限管理包含su切换用户、passwd修改密码;网络工具包含ping测试和wget下载;还介绍了grep搜索、tar压缩、chmod权限设置等实用命令。这些命令组合可满足日常系统管理、文件处理和网络操作需求,是Linux用户必备的基础技能。

2025-10-10 17:30:26 228

原创 Express.js 入门指南:从零开始构建 Web 应用

Express.js是一个轻量级Node.js Web框架,具有灵活的路由、中间件和请求处理功能。本文介绍了Express的核心概念:1)路由系统支持多种HTTP方法;2)中间件机制可扩展功能;3)内置JSON/URL编码解析;4)Router模块化路由管理;5)身份验证和错误处理机制。通过示例项目展示了典型应用结构:主文件配置中间件、路由和错误处理,路由模块实现CRUD操作,静态文件服务前端页面。Express以简洁架构实现了完整的Web应用开发生态。

2025-09-28 11:46:53 1098 1

原创 云服务器部署方案 - 使用宝塔面板托管服务(二)

本文介绍了一个Node.js用户反馈系统的开发与部署流程。该系统包含前端页面(index.html)和后端服务(app.js),实现了用户反馈提交和历史记录展示功能。开发部分使用Express框架搭建后端API,MySQL存储数据,前端通过fetch与后端交互。部署部分详细说明了如何在阿里云ECS服务器上安装宝塔面板,配置Nginx反向代理,设置安全组规则,并通过PM2管理Node.js应用。文章还对比了CORS和反向代理两种解决跨域问题的方案,为前后端分离项目提供了完整的部署指导。

2025-09-22 11:38:23 685 2

原创 项目首次推送到GitHub、指令步骤(下)

本文介绍了Git基本操作流程:1)初始化本地仓库并提交文件;2)关联远程GitHub仓库;3)首次推送需输入GitHub邮箱和Token令牌;4)验证连接状态和修改远程地址的方法。文章还提供了CSDN参考链接,详细说明GitHub公钥和Token配置。

2025-09-16 00:14:28 716

原创 GitHub 配置公钥、Token令牌(上)

摘要: 本文介绍了如何通过SSH方式配置GitHub免密推送项目。首先检查是否存在SSH Key,若不存在则使用ssh-keygen命令生成(需替换邮箱)。然后将公钥id_rsa.pub内容复制到GitHub的SSH设置中。通过ssh -T git@github.com验证配置。针对HTTPS方式,可在开发者设置中生成Personal Access Token,推送时用Token替代密码。两种方案均可解决频繁输入账号密码的问题,SSH为推荐方案。

2025-09-16 00:11:16 1248

原创 云服务器部署方案 - 使用静态网站托管服务(一)

本文介绍了三种免费托管静态网站的最简方案:1)GitHub Pages(适合个人项目);2)Netlify(支持自动化部署和全球加速);3)Vercel(专为Next.js优化)。部署步骤包括初始化Git仓库、推送代码到GitHub,然后在托管平台关联仓库即可。这些方案无需管理服务器,支持自动构建部署,是个人博客、企业官网等静态站点的理想选择。

2025-09-16 00:07:36 540

原创 后台管理系统权限管理:前端实现详解

本文介绍了基于诺依系统的前端权限管理实现方案。该方案通过角色划分实现数据隔离和操作限制,并优化了用户体验。系统采用Vue生态构建,通过Vuex管理全局状态,实现权限数据的动态加载和路由注入。核心功能包括:1)登录后初始化权限数据;2)动态生成和注入路由配置;3)全局路由守卫实现实时权限校验;4)递归组件渲染动态菜单;5)自定义指令实现按钮级权限控制。系统还设计了权限缓存策略和动态更新机制,确保权限变更能及时生效。方案采用"数据驱动UI适配"的设计思想,通过前端展示控制和后端安全校验相结合

2025-08-01 16:52:12 1480 2

原创 Vuex 状态管理:五大核心属性及使用指南

Vuex是Vue.js官方状态管理库,包含五大核心功能:State存储全局状态,Mutation同步修改状态,Action处理异步操作,Getter加工状态数据,Module拆分复杂状态。通过传统调用方式或辅助函数(mapState、mapMutations等)可在组件中使用这些功能。Module能有效组织大型应用的状态,提高代码可维护性。Vuex为Vue应用提供了清晰、高效的状态管理方案,特别适合中大型项目开发。

2025-08-01 10:00:11 999

原创 微信小程序业务 手摸手教学

涵盖微信登录(静默)、微信支付、微信订阅消息等持续更新、

2025-03-28 15:05:43 530

原创 Date 日期对象使用指南

日期方法创建 Date 对象时,可以使用许多方法对其进行操作。日期方法允许您使用本地时间或 UTC(通用或 GMT)时间来获取和设置日期对象的年、月、日、小时、分钟、秒和毫秒。

2025-03-27 09:30:00 877

原创 uniapp整合SQLite(Android)

最佳方案,是把代码封装到一个公共库,需要增删改查数据 直接调用指定方法即可。一. 在uni-app项目中, 链接SQLite。一. 在uni-app项目中, 链接SQLite。在项目中勾选此选项,确保相关权限。

2025-03-21 11:29:10 1172

原创 adb 如何导出手机的文件

adb(Android Debug Bridge)是Android开发中常用的一个工具,它允许开发者通过电脑与Android设备进行通信。如果你想通过adb导出手机上的文件,你可以按照以下步骤业务需求: 前端通过使用uni-app 的sqlite(关系型数据库系统) ,存储了大量的机密数据在手机上, 直接通过代码读取,体验感不够直观, 于是就产生了可视化预览数据的需求1. 开启USB调试确保你的Android设备已经开启了USB调试模式。你可以在“设置” -> “开发者选项”中开启它。

2025-03-21 11:24:38 3115 1

原创 搜索插入位置(力扣题)

(二分策略)给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引。如果目标值不存在于数组中,返回它将会被按顺序插入的位置

2025-03-11 09:30:00 356

原创 前端页面搭建中 左右布局的实现方案

需求:在一个块级元素中实现左右布局,左侧需要横向滚动,右侧固定宽度。

2025-03-07 09:00:00 1377

原创 Vue项目性能优化、提取公共库(Common Chunks)

项目打包: npm run build根目录下生成一个 dist 文件夹顾名思义chunk(块 / 包) -vendors(供应商),即为:不是自己写的模块包,也就是/node_modules项目目录的所有模块包,它们称为第三方模块或供应商模块。

2025-02-28 14:00:00 963

原创 怎样创建一个Vue的项目

怎样创建一个Vue的项目

2025-02-28 09:55:20 442

原创 Eslint 和 Prettier 工具的使用

在许多情况下,你可以使用 ESLint 附带的 [默认解析器] 来解析 JavaScript 代码。你可以选择使用parser属性覆盖默认解析器。parser属性必须是符合 解析器接口 的对象。例如,你可以使用包来允许 ESLint 解析实验性语法parser: babelParser, // 指定 ESLint 使用的解析器parserOptions: { // 解析器的附加配置选项。

2025-02-28 09:07:50 2714

原创 理解 Husky 和 lint-staged 的核心价值(Git Commit代码规范)

作用: 缩小范围, 只检查本次提交所修改(指 git 暂存区内)的代码块, 搭配Husky 可以达到很好的效果。不依赖其他工具时:仍可执行自定义任务(如运行测试、生成文档、发送通知等)。搭配 ESLint 等工具时:才能实现代码质量检查的自动化。ESLint/Prettier:实际执行代码检查和修复。,则必须依赖 ESLint、Prettier 等工具。Husky 能使你的提交变得更好 🐶。,本身不直接执行代码检查,但可以运行。提交消息格式校验(不涉及代码检查)。(包括代码检查、测试、构建等)。

2025-02-27 09:30:00 973

原创 优雅处理 ECharts 无数据场景的最佳实践

直接替换 DOM 会导致 ECharts 实例与 DOM 节点解绑,后续操作会抛出。:首次进入页面即刻渲染, 得放置于dom挂载后(mounted生命周期)通过 dispose() 方法销毁旧实例, 避免内存泄漏。直接隐藏图表容器会导致 ECharts 实例报错。后端接口返回空数据时图表区域留白。临时添加的占位符需要维护两套样式。频繁的 DOM 操作影响页面性能。:通过插槽支持自定义占位内容。:结构/样式/逻辑三层分离。:通过 CSS 控制显隐。在组件卸载时自动清理资源。

2025-02-21 15:00:00 1046

原创 JavaScript 中,数据类型 有哪些?(复习/面试)

数值 Number, 字符串String,布尔值Boolean, undefined,null,Symbol,Bigint。数组,有序的数据集合 数组索引从零开始:数组中的第一个元素是 0,第二个元素是 1。slice(start, end)字符串截取,返回提取的部分,不会更改原始字符串。Object.values( ) 返回对象的所有值组成的数组。含义:表示独一无二的值,主要用于创建对象的私有属性和方法。:对数组中的每个元素执行指定的操作,并返回新的数组。对象, 无序的数据集合,由键值对组成。

2025-02-21 09:00:00 962

原创 ES6 Set 与 Map 数据结构(复习/面试)

特性:唯一,不重复,成员值不限Set的原理是:如果传入的数组,那么它会遍历数组, 传入的是字符串,字符串会被自动拆分为单个字符 ,并逐个添加到Array.from()方法 可以将Set 结构转为数组注意点: Set的遍历顺序是插入顺序思考: 使用Set 如何实现数据并集(通过扩展运算符)、交集(通过filter过滤,条件has方法)、差集 (通过filter过滤,条件has方法取反)

2025-02-20 22:45:32 814

原创 普通函数和箭头函数的区别

普通函数:使用function关键字来定义,可以是函数声明或者函数表达式。// 函数声明// 函数表达式箭头函数:使用箭头=>来定义,语法更加简洁。

2025-02-20 09:49:28 319

原创 本地mysql服务 账号长期未使用,忘记密码?

打开 root@localhost:后面即初始密码,ctrl+c 复制初始密码。(过程中data文件夹会自动生成配置文件)出现 Enter password。找到以.err结尾的文件。(输入复制的密码即可 )

2024-12-03 22:21:57 303

原创 Vue2 和 Vue3 自定义指令比较

在Vue 2和Vue 3中,自定义指令可以通过全局注册和局部注册来创建。

2024-08-15 10:11:19 1322

原创 Vue2 element-ui引入 及定制element-ui主题

Vue2 element-ui引入 及定制element-ui主题。生成的主题文件, 解压后 放置于的根目录。文件,并在main.js中引入。路径为自定义主题相对于。一起使用,只需要修改。

2024-08-13 01:12:19 1327

原创 Vue3 elementPlus引入 及定制elementPlus主题

基于vue3项目搭建好,项目内需应用elementPlus,按下列要求操作即可。

2024-08-13 00:02:43 772

原创 项目中使用`import`关键字导入文件方式

在某些情况下,一个模块可能只有一个主要的导出内容。这时,你可以使用默认导出来简化导入过程。

2024-08-08 10:59:11 551

原创 Vue3 组件通信

顶层组件向任意的底层组件传递数据和方法,实现跨层组件通信。顶层组件可以向底层组件传递方法,底层组件调用方法修改顶层组件的数据。概念:通过 ref标识 获取真实的 dom对象或者组件实例对象。在调用provide函数时,第二个参数设置为ref对象。子组件内部通过 emit 方法触发事件。通过ref标识绑定ref对象到标签。子组件内部通过props选项接收数据。父组件中给子组件标签通过@绑定事件。调用ref函数生成一个ref对象。父组件中给子组件绑定属性。

2024-08-08 09:54:42 760

原创 前端常见场景、JS计算精度丢失问题(Decimal.js 介绍)

官网: decimal.js提供十进制类型的任意精度数值Decimal.js 是一个小型库,用于解决浮点数计算的不精确问题安装 decimal.js在代码中引入 ,两种方式二选一require 是CommonJS模块系统的语法import 是ES6模块系统的语法。

2024-07-29 16:37:54 1835

原创 封装导出功能(export)

是一个用于在前端导出文件的JavaScript库,‌它允许开发者在浏览器环境中方便地保存文件。‌通过使用file-saver,‌开发者可以创建Blob对象,‌并利用FileSaver.saveAs方法将文件保存到用户的设备上。‌这种方法特别适用于Web应用中需要导出文件到客户端的情况,‌如Excel、‌CSV等。‌在Vue.js中使用file-saver导出文件的基本步骤包括:‌。

2024-07-29 12:05:25 1220

原创 封装分页组件(Pagination)v2版本

Vue项目 -- 封装分页组件(Pagination)v2版本

2024-07-23 21:36:52 494

原创 Git如何将一个分支上的修改转移到另一个分支

未commit时,临时存储- 切分支- 释放临时存储,已commit时,回撤状态,继续执行未commit时操作使用来完全撤销到某个特定的提交,但会丢失之后的更改。使用git revert来撤销某个特定的提交,同时保留之后的更改,并生成一个新的提交。在修改了本地仓库的历史后,使用来强制推送更改到远程仓库,但请谨慎操作以避免不必要的问题。

2024-07-23 21:03:32 3387

原创 保持git提交整洁规范 -- 添加.gitignore 配置文件

gitignore 是一个可以帮助我们忽略Git跟踪的文件或目录的配置文件。这样做可以帮助我们保持.git目录的整洁,避免不必要的文件上传到远程仓库,也可以帮助我们更好地管理自己的项目。

2024-07-21 18:29:38 898

原创 保持项目代码风格一致性 -- 使用.editorconfig的配置文件

这个配置文件设置了字符编码、行尾格式、是否在文件结束处插入新行、是否删除行尾空格以及缩进方式和大小。这些规则会被很多编辑器和IDE遵守,比如 Visual Studio Code、Sublime Text、Atom 等。editorconfig文件是一个配置文件,用于定义编码风格相关的规则,以便在不同的编辑器和IDE之间保持代码风格一致性。

2024-07-21 18:12:21 700

原创 项目打包时, 控制台报caniuse-lite is outdated

当你看到这样的提示时,意味着你的项目依赖的数据库已经过时,需要更新。是一个包含浏览器兼容性数据的数据库,使用这个数据库来确定目标浏览器的兼容性。

2024-07-18 10:09:57 1910

原创 常用的 webpack -- HtmlWebpackPlugin(了解)

HtmlWebpackPlugin 是webpack 的插件,主要作用有以下几个方面自动生成 HTML 文件:在 webpack 构建过程中自动创建 HTML 文件。插入资源链接:自动将编译后的 CSS 和 JavaScript 文件链接插入到 HTML 中。模板支持:可以使用自定义 HTML 模板,并在构建时替换模板中的变量。环境变量:支持在 HTML 中使用 webpack 环境变量,如。多入口支持:可以为每个入口点生成不同的 HTML 文件,适用于多页面应用。

2024-07-18 09:55:35 1784

原创 Vue项目打包性能分析、webpack-bundle-analyzer插件介绍

webpack-bundle-analyzer 是一个流行的 webpack 插件,用于可视化 webpack 输出的文件大小和组成。它帮助你理解各个模块如何贡献到最终的 bundle 大小,从而可以对 bundle 进行优化1. 安装插件2.配置 webpack:在你的 配置文件中(通常是webpack.config.js 或 vue.config.js),导入 BundleAnalyzerPlugin 并将其添加到 plugins 数组中。vue.config.js方式...return {

2024-07-16 11:01:18 1397

原创 Electron系列 -- vue项目打包成.exe文件(通过官方demo的方式)

在Inno Setup 里面搭建一个脚本, 通过脚本编辑安装程序的名称, 版本. 快捷键生成, 安装目录等, 是很有必要的, 生成一次后,后续可以一直沿用 ,二次使用选择上一次创建好的脚本, 一键打包即可。打包完毕, node_modules同级 会生成out文件, 点开exe包就是打包好 , 可安装在windows系统上。重点是: mainWindow.loadFile(“./dist/index.html”) 的修改。通过将vue项目打包, 会生成一个dist文件。1. npm 出现 镜像问题。

2024-07-15 14:57:23 3219 1

原创 npm安装依赖时报镜像问题

npm安装依赖时,出现报错:npm ERR!request to https://registry.npm.taobao.org/cnpm failed, reason: certificate has expired ,这是因为淘宝镜像证书过期了,需要更换。,则说明已经设置成功 ,就可正常使用npm命令安装需要的工具了。设置淘宝源镜像源 ( 二选一 )设置官方镜像源 ( 二选一 )

2024-07-15 11:27:56 873

原创 Electron系列 -- 打包后底部托盘图标丢失

是一个生成图标的包安装 electron-icon-builderpackage.json 中配置命令},执行命令, 生成icon完成后会在根目录多出来一个build目录在vue.config.js 中, 也要将路径进行调整 ./build/icons/icon.ico删除原来的,重新打包,安装后就是新图标了。

2024-07-12 19:33:20 1256

空空如也

空空如也

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

TA关注的人

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