自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

欢迎大家一起攻克bug

欢迎大家一起攻克bug

  • 博客(44)
  • 收藏
  • 关注

原创 PC端微信小程序 实现上传下载表格(xls、xlsx)

本文介绍了两种文件处理方法:下载和上传功能实现。 下载功能通过newDownload()方法实现,包含请求地址拼接、参数编码、文件下载和打开等流程,使用uni-app的下载和打开文档API,并处理了各种状态和错误情况。 上传功能通过外部H5+webview实现,区分PC端和移动端:PC端打开H5上传页面,移动端调用原生上传逻辑。H5页面实现了拖拽上传和文件选择功能,包含文件类型/大小校验、上传进度显示,并通过微信JS-SDK与小程序通信传递上传结果。 两种方法都考虑了多平台兼容性和用户体验,提供完整的错误处

2025-12-27 09:53:56 109

原创 微信小程序实现下载 上传表格(xls、xlsx)

项目使用uniapp写的 专门给微信小程序做个上传 下载表格,下载方通过临时保存文件然后分享这个文件路径,达到下载功能。下载方法download(),通过临时保存文件然后分享这个文件路径,达到下载功能。上传方法uploading()

2025-11-21 08:57:52 325 1

原创 WebSocket 使用

本文介绍了一个基于WebSocket的简单AI对话系统实现方案,包含前端HTML页面和后端Python服务端代码。前端使用WebSocket与后端通信,支持自动重连和多消息类型(用户/AI/系统),提供友好的交互界面。后端使用Python的websockets库实现WebSocket服务,监听ws://localhost:8765,接收JSON格式用户消息后调用模拟AI函数生成回复(可替换为真实AI API)。系统支持多客户端连接,包含完整的错误处理机制。启动步骤包括安装依赖、运行服务端和通过本地HTTP服

2025-11-05 15:54:56 244

原创 Vue 事件修饰符用法详解

Vue.js事件修饰符全解析:简化事件处理的实用工具 Vue提供了多种事件修饰符来优化事件处理,包括基本修饰符(.stop、.prevent、.capture等)、按键修饰符(.enter、.ctrl等)、鼠标按钮修饰符(.left、.right)和系统修饰符。这些以点号表示的修饰符可串联使用,但顺序会影响效果。特别要注意.passive和.prevent不能同时使用,且系统修饰键会改变其他按键行为。通过Vue.config.keyCodes还可自定义按键别名,这些特性共同使事件处理代码更简洁高效。

2025-08-15 09:04:55 269

原创 Vue 中使用 Dexie.js

本文介绍了如何在Vue项目中使用Dexie.js实现客户端数据存储的方案。主要内容包括:1)Dexie.js的安装与数据库初始化配置;2)在Vue组件中实现CRUD操作;3)创建Vue插件形式全局使用数据库;4)高级功能如响应式数据绑定、分页查询和事务处理;5)最佳实践包括错误处理、性能优化和数据库升级;6)完整的Todo应用示例。文章展示了Dexie.js与Vue结合能有效构建离线优先的应用程序,提供良好的用户体验。

2025-07-31 16:12:34 652

原创 Dexie.js 使用教程

Dexie.js是一个简化IndexedDB操作的轻量级JavaScript库。通过npm或CDN安装后,可轻松创建数据库、定义表结构,并执行增删改查操作。支持高级查询、事务处理、数据库升级和错误处理,提供Promise和async/await语法支持。相比原生IndexedDB,Dexie.js提供了更友好的API,大大降低了浏览器端数据库的使用难度,适合需要本地存储的Web应用开发。

2025-07-31 16:02:28 519

原创 IndexedDB 浏览器数据库

IndexedDB是浏览器提供的客户端NoSQL数据库,支持存储大量结构化数据和文件。其核心特点包括基于键值对的存储、异步操作、事务支持和索引查询。基本使用涉及创建数据库、对象存储(表)和索引,通过事务进行增删改查操作。虽然API较复杂且原生不支持Promise,但适合需要离线访问、大容量存储和复杂查询的Web应用。开发时可通过Dexie.js等库简化操作。文中提供了完整的示例代码,演示了数据库的创建以及数据的增删改查操作。

2025-07-31 15:54:38 415

原创 常用sql语句

本文整理了SQL常用语句大全,包含数据查询、操作、表管理、高级查询和事务控制等核心功能。在数据查询方面,介绍了基础SELECT、条件查询、排序分组、去重等语法;数据操作部分涵盖INSERT、UPDATE、DELETE语句;表操作包括CREATE、ALTER、DROP等DDL命令;高级查询讲解JOIN连接、子查询、UNION联合查询等技巧;此外还提供索引、视图管理以及事务控制的语法规范。这些语句适用于主流数据库系统,虽存在细微语法差异,但基本概念通用,是数据库开发和管理的必备参考。

2025-07-30 10:55:57 95

原创 使用 Dijkstra 算法 和 旅行商问题(TSP) 规划快递员配送路线(python)

摘要:该方案结合Dijkstra算法和TSP算法优化物流配送路径。Dijkstra算法计算各配送点间最短路径,TSP算法寻找最优配送顺序。实现过程包括:通过高德API获取实际距离数据,构建距离矩阵;采用排列组合穷举法求解TSP问题;最终输出包含起点、各客户点及返回路线的最短路径。代码示例展示了从仓库出发,依次配送3个客户点后返回的完整流程。需注意API调用限制和计算复杂度问题,对大规模配送点建议采用启发式算法优化。该方案可扩展支持动态路径调整和多配送员场景。

2025-07-25 14:46:50 587

原创 Python文件练习

这段Python代码演示了文件的基本读写操作。首先展示了如何打开文件写入内容("foo.txt")并关闭文件,然后演示了三种读取文件内容的方法:readline()、readlines()和逐行读取。接着代码展示了如何创建新文件("new_file.txt")并写入内容,最后介绍了检查文件是否存在后再创建文件的方法。代码中每个文件操作后都正确关闭了文件,体现了良好的文件处理习惯。

2025-07-25 09:35:48 118

原创 网页刮刮卡效果

这篇代码实现了一个网页刮刮卡效果。主要功能包括:通过Canvas覆盖灰色遮罩层,当用户用鼠标刮擦时,遮罩层会被擦除,露出下方图片。核心实现是使用Canvas绘图API,设置globalCompositeOperation为'destination-out'模式来实现擦除效果,并通过鼠标事件(mousedown、mousemove、mouseup)来跟踪用户刮擦动作。代码结构简洁,包含HTML布局、CSS样式和JavaScript交互逻辑,适合直接复制使用。

2025-07-25 09:14:11 198

原创 个人中心顶部样式

本文展示了五种CSS实现不同形状效果的代码示例:1)底部弧形效果,通过border-radius设置下边角弧度;2)半圆形底部效果,使用::after伪元素配合border-radius实现;3)内凹效果,利用负边距和圆形边框创建凹陷感;4)波浪效果,通过径向渐变组合实现波浪形状;5)渐变效果,融合线性渐变和多个径向渐变创造多彩背景。这些代码均采用纯CSS实现,展现了CSS在创建复杂形状方面的强大能力,适合需要特殊形状效果的网页设计场景。

2025-07-25 09:02:22 123

原创 开发浏览器插件-保存页面元素数据为json或csv

这是一个浏览器扩展插件,主要用于从网页中提取特定数据并导出为JSON或CSV格式。插件包含manifest.json配置文件、后台脚本(background.js)、内容脚本(content.js)和弹出窗口(popup.html)等组件。核心功能通过changePageColor函数实现,该函数会查找页面中class为"datu"的列表元素,提取其中的药品名称数据,并支持将数据转换为JSON或CSV格式下载。插件还提供了基本的UI交互功能,包括通过点击按钮改变页面背景颜色,并在页面右下

2025-07-22 17:12:07 322

原创 python使用playwright从入门到精通

本文介绍了使用Playwright进行网页自动化测试的两个案例。第一个案例演示了如何安装Playwright并测试一个包含多种交互元素的HTML页面,包括表单操作、选择框、按钮、拖放、文件上传等功能,并提供了完整的HTML和Python测试代码。第二个案例展示了如何自动化登录系统并导出文件,详细说明了页面导航、元素定位和文件下载的操作流程。两个案例都使用了同步API,并包含截图和文件保存功能,适合作为Playwright自动化测试的入门参考。

2025-07-11 14:46:14 175

原创 Playwright Python 教程:网页自动化

Playwright是一款功能强大的网页自动化工具,支持多种语言和浏览器。它比Selenium速度更快,比Puppeteer支持更全面的浏览器。摘要介绍了Playwright的安装、核心对象、基本操作流程以及典型应用场景,包括浏览器控制、页面交互、内容提取等关键功能。通过4个实用案例(自动登录、商品爬取、无限滚动处理和文件下载)展示了其实际应用能力。Playwright特别适合自动化测试、网页爬虫等场景,具有自动等待机制、网络请求拦截和设备模拟等独特优势。

2025-07-11 14:37:42 821

原创 深入探讨 Python Pytk:构建图形用户界面的强大工具

摘要:本文介绍了Tkinter GUI开发的基本步骤。首先说明Tkinter通常随Python自带,也可通过pip安装。然后展示了一个简单的Tkinter程序示例,包含窗口创建、标签和按钮控件添加,以及事件循环设置。最后提到可以使用PyInstaller将Tkinter程序打包成独立桌面应用。该示例演示了窗口属性设置、控件布局和基本事件处理功能,为初学者提供了Tkinter开发的入门指南。(149字)

2025-07-08 15:43:43 336

原创 PyInstaller打包桌面应用

PyInstaller将Python程序打包为桌面应用的简明指南:1.安装工具:pip install pyinstaller;2.准备开发完成的.py文件;3.使用命令pyinstaller --onefile --windowed myapp.py进行打包;4.生成文件位于dist文件夹内;5.可选添加图标(--icon)或资源文件(--add-data)。注意事项:确保依赖文件完整打包,可能需处理反病毒软件误报问题。该方法让用户无需Python环境即可运行程序。

2025-07-08 15:41:09 489

原创 深入探讨 Python PyQt:构建图形用户界面的强大工具

my_signal = pyqtSignal(str) # 定义一个信号emitter.my_signal.connect(lambda x: print(f"收到信号: {x}"))emitter.my_signal.emit("Hello") # 触发信号Python PyQt 信号与槽机制 | 菜鸟教程。

2025-07-08 15:39:13 1214

原创 监测微信小程序更新并提示客户

本文介绍了在小程序中使用uni-app框架实现版本更新的完整流程。通过getUpdateManager获取更新管理器,检测新版本后弹出更新提示框,用户确认后执行静默下载。更新完成后自动重启应用,若更新失败则提示用户手动删除小程序重新进入。代码还处理了用户取消更新的情况,通过二次弹窗强制更新。最后对不兼容的微信版本给予提示。该方案实现了小程序版本更新的完整闭环,确保用户及时获取最新版本。

2025-05-28 08:50:01 681

原创 uniapp movable-view组件层级太高,导致里面事件无响应解决办法

使用movable-area、movable-view实现拖拽、缩放效果时,发现了一个问题,在此记录一下:movable-view里包裹的元素事件不会触发。movable-view css上加 pointer-events: auto。movable-area css加 pointer-events: none。

2025-05-21 10:28:32 248

原创 Vue 使用js-cookie

在 Vue 中使用js-cookie库非常方便,适合用于实现用户的身份验证、会话管理等功能。通过和,你可以轻松地设置、获取和删除 cookies。结合 Vuex 可以更好地管理应用的状态,尤其是在需要跨页面共享身份信息时。这样,你就可以在 Vue 应用中灵活地使用 cookies 存储用户的认证信息或者其他需要持久化的数据。

2024-11-26 08:56:27 863

原创 ES6一些新特性以及语法。

ES6一些新特性以及语法let和const关键字:用于声明变量。 let:定义块级局部变量。 const:定义常量,注意:如果是定义对象或数组,那么该对象或数组中的值可被改变,但引用不能改变。 箭头函数:提供了一种更简洁的函数声明语法,并且没有自己的this、arguments、super或new.target。 带参数一般写法:const a = (a) => console.log(b); 没有参数写法可省略参数括号:const a = b => console.log(

2024-11-22 09:40:46 421

原创 vue项目前端解决不同用户字体大小问题

用户界面缩放:假设应用支持用户调整字体大小或页面缩放比例,就是处理这种调整的核心函数。响应式设计:通过调整根元素的字体大小(REM单位),可以使页面的布局根据用户设置自动调整,达到更好的适配效果。服务器端同步设置:该方法将用户的设置(缩放比例)同步到服务器,确保在不同设备或会话中保持一致的用户体验。

2024-11-21 09:44:13 734

原创 umy-ui 使用

安装umy-ui并在 Vue 项目中全局注册。使用umy-ui提供的 UI 组件,如按钮、输入框、弹窗、表格等。配置和定制样式,使用 Vue 的v-model和事件绑定来控制组件行为。通过umy-ui,你可以快速构建一个现代化的用户界面,提高开发效率。

2024-11-14 09:53:11 2179

原创 vue-esign 在 Vue 中实现手写电子签名功能

Vue-Esign 提供了一个简单易用的电子签名组件,帮助开发者轻松集成电子签名功能。通过灵活的配置选项,你可以定制签名画布的大小、样式、功能等。使用时只需关注获取签名数据并进行处理(例如上传或存储)。

2024-11-14 09:37:00 2611

原创 JS常用方法

JavaScript 中有许多常用方法,可以帮助你进行数据处理、DOM 操作、事件处理等任务。

2024-11-13 08:50:38 1070

原创 uniapp开发微信小程序-跳转页面并传递复杂数据类型

解码,然后转为对象。

2023-09-11 21:16:40 586

原创 Pinia 快速入门

姓名:{{ name }}</p> <p>年龄:{{ age }}</p> <p>性别:{{ sex }}更改姓名

2023-09-05 11:24:19 328 1

原创 vue2传值

我要给 Brother 组件传数据姓名1:{{ myname }}年龄1:{{ myage }}地址:{{ myaddress }}姓名:{{ name }}姓名:{{ name }}年龄:{{ age }}年龄:{{ age }}

2023-09-05 11:16:08 223 1

原创 vue中的then方法

方法处理异步操作并不局限于 HTTP 请求,它也可以用于处理其他返回 Promise 的异步操作,比如使用。方法通常用于处理异步操作的返回结果,例如 Promise 或者是通过 Vue 的。方法被调用来处理 HTTP 请求的返回结果。希望以上信息对您有帮助。如果有任何疑问,请随时提出。方法中编写自己的逻辑来处理该数据。对象,其中包含了返回的数据。方法可用于捕获请求过程中发生的错误。需要注意的是,在 Vue 中,使用。库发送的 HTTP 请求。

2023-09-05 09:58:14 4706 1

原创 JS 堆与栈

number:数值、、string:字符串、boolean:Boolean(布尔值)、undefine:Undefined 类型、null : Null类型、symbol:Symbol (符号)是一种自动内存管理机制,它可以自动地识别不再使用的变量和对象并将它们从内存中清除,以释放内存空间。一般情况下局部变量的值,不使用就会自动回收掉。1、内存分配:声明变量、函数、对象的时候,系统自动为他们分配内存;3、内存回收:使用完毕,垃圾回收器自动回收不再使用的内存。2、内存使用:读写内存,也就是使用变量、函数等;

2023-08-19 16:42:59 103

原创 前端解决跨域------反向代理

前端解决跨域------反向代理

2023-08-17 13:28:33 1643 1

原创 前端页面优化(一) 性能篇:防抖与节流

使用防抖和节流函数可以有效控制函数的执行频率,提升网页性能和用户体验。例如在监听滚动事件时,可以利用节流函数限制事件触发的频率,避免过多的计算和更新操作;在输入框搜索功能中,可以利用防抖函数减少请求次数,减轻服务器压力。防抖函数的作用是在事件触发后,等待一段时间后再执行相应的处理逻辑。这样可以避免在连续触发事件时频繁执行处理逻辑,起到节流的效果。节流函数的作用是在一定时间段内,最多执行一次相应的处理逻辑。如果在这个时间段内频繁触发事件,只有第一次会执行处理逻辑,后续的触发会被忽略。表示需要执行的处理逻辑,

2023-08-17 10:05:46 295 1

原创 微信开发者工具-真机调试,苹果手机白屏(MiniProgramError Generate function polyfill not found, may be not a valid code )

解决方案:app.json里查看renderer属性,默认给的是skyline,这个目前存在兼容性问题,文档里给的是安卓 8.0.33+,iOS 8.0.34+持续迭代中...所以要想解决,可以将renderer属性改为“webview”。本地开发没有报错,以及上传到体验版也没有报错,就是真机调试ios报错。按照以上方法修改,这样用真机调试,不会报错了~刚刚测试有效。

2023-08-12 19:35:36 1002 2

原创 vue3 组合式API <script setup>中子组件之间传值逻辑

使用API选项时,我们可以通过this.$refs.name获取指定的元素或组件,但在组合API中不行。注意:使用 provide 进行数据传输时,尽量使用 readonly 封装数据,避免子组件修改父组件传递的数据。注意:默认情况下,setup 组件是关闭的,通过模板 ref 获取组件的公共实例。在 Vue 3.x 的 EventBus,我们可以看到它的 API 和旧版是非常接近的,只是去掉了。在父组件中,只需要监听子组件的自定义事件,然后执行相应的添加逻辑即可。在需要暴露交流事件的组件里,通过。

2023-07-10 16:22:31 585 1

原创 Vue工具库VueUse

通俗的来说,这就是一个工具函数包支持了更好的逻辑分离,它可以帮助你快速实现一些常见的功能,免得你自己去写,解决重复的工作内容。VueUse不是Vue.use,它是为Vue 2和3服务的一套Vue Composition API的常用工具集,是目前世界上Star最高的同类型库之一。这些类别中的大多数都包含几个不同的功能,因此 VueUse 可以灵活地用于你的用例,并且可以作为快速开始构建 Vue 应用程序的绝佳场所。VueUse的最大特点之一是,它只用一个软件包就能同时兼容Vue 2和Vue 3!

2023-06-26 16:16:10 590 1

原创 element-plus 自定义主题色

element-plus 自定义主题色

2023-06-26 15:45:18 2779 1

原创 pinia-plugin-persistedstate适用于 Pinia 的持久化存储插件

配合pinia 插件存、取、删本地数据(localStorage等)

2023-06-24 21:10:04 874 1

原创 Ajax 和 axios的区别

功能扩展:axios 可以通过插件来扩展其功能,例如可以使用 qs 插件来构建查询字符串、使用 redux-axios-middleware 将 axios 与 Redux 集成等。综上所述,Ajax 和 axios 都是前端常用的发送请求和获取数据工具,但在实现方式、跨域限制、拦截器、扩展功能等方面存在一些差异。根据具体的需求和项目要求,我们可以选择更加适合的工具来进行开发。跨域限制:由于浏览器的同源策略限制,使用 Ajax 进行跨域请求时需要进行一定的处理(如 JSONP、CORS 等)。

2023-06-21 10:18:40 2018

原创 判断一个数据是否为 JSON 数据与使用场景

存储数据:在前端开发中,我们也可以使用 JSON 数据来存储一些数据。需要注意的是,如果要判断一个对象或数组是否为 JSON 数据,首先需要将它转换为 JSON 字符串,然后再按照上述步骤进行判断。例如,一些前端框架或者库的配置信息就可以保存为一个 JSON 对象,然后在应用启动时解析该对象并进行相应的初始化操作。总之,JSON 数据在前端开发中应用广泛,它具有易读、易解析、易扩展等特点,能够帮助我们更加便捷地处理数据。方法进行解析,我们可以判断一个数据是否为 JSON 数据。

2023-06-21 10:09:06 6503

空空如也

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

TA关注的人

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