- 博客(60)
- 收藏
- 关注
原创 Web网页实现上拉加载分页
这段代码的主要功能是使用 Intersection Observer API 来实现滚动加载。当用户滚动到页面底部(或接近底部)时,触发加载更多内容的操作。通过设置 rootMargin 和 threshold,可以灵活控制何时触发加载。
2025-01-15 08:40:50
335
原创 Cursor的使用提示词
那这里总结一下 我们用cursor完成了前端代码的开发 我们就是发送提示词写清楚我们的需求 以及出现问题 或者想调整功能和UI 继续 用文字和他持续沟通即可。3. 请你根据我的需要,一步一步思考,给我开发这个项目。- 返回: 新添加的待办事项对象,包含自动生成的唯一 id。- 接口名: POST /api/update-todo/- 接口名: POST /api/del-todo/- 接口名: POST /api/add-todo。- 接口名: GET /api/get-todo。
2025-01-09 17:47:17
1086
原创 Vue2中 vuex 的使用
安装vuex与vue-router类似,vuex是一个独立存在的插件,如果脚手架初始化没有选 vuex,就需要额外安装。
2024-11-27 20:46:45
447
原创 鸿蒙给图片设置水印,保存到相册
分别绘制图像和文水印文字。水印图片的保存可以使用安全控件。离屏画布拿到图片源数据,在离屏画布上使用。1.解析图片得到pixelMap数据。方法创建PixelMap对象。结合fs.write来实现。方法获取图片宽、高信息,使用。3.封装添加水印的方法。4.封装下载图片的方法。
2024-11-24 11:09:10
808
原创 后台管理系统(RBAC)
3.在全局路由前置守卫中遍历权限数组, 从动态路由数组中筛选出该用户所拥有的能访问的路由对象, 用router.addRoute方法把筛选出来的路由添加到路由规则数组中, 那么用户就能访问它能访问的页面。3) 主页面的左侧菜单是通过路由数组遍历出来的, 但是如果是动态添加路由, 这个数组不是响应式的, 所以左侧的菜单显示不出来, 解决方案: 把路由数组同步存储在pinia中。4) 退出登录的时候, 一定要把上一个用户的路由信息清除, 如果不清除, 新的用户登录进来还是显示上一个用户的信息, 除非刷新。
2024-11-16 19:42:16
707
原创 Web导出Excel表格
流程:前端调用到导出excel接口 -> 后端返回excel文件流 -> 浏览器会识别并自动下载。流程:前端获取要导出的数据 -> 常规数据用插件处理成一个excel文件 -> 浏览器下载。场景:大部分场景都有后端来做。场景:少数据量的导出。
2024-11-16 19:26:14
566
原创 前端Web用户 token 持久化
的有效期会持续一段时间,在这段时间内没有必要重复请求token,但是本身是基于内存的管理方式,刷新浏览器Token会丢失,为了避免丢失需要配置持久化进行缓存解释:浏览器本地存储区域,类似。
2024-11-07 21:01:12
1323
原创 token加密的算法,MD5加密方法的封装
MD5(Message - Digest Algorithm 5)是一种广泛使用的哈希函数,用于将任意长度的数据转换为 128 位(16 字节)的哈希值(也称为消息摘要)。它通过对输入数据进行一系列复杂的数学运算来生成这个唯一的哈希值。具体来说,MD5 算法将输入的数据划分为 512 位(64 字节)的块,对于不足 512 位的数据会进行填充使其满足要求。然后,它会对这些数据块进行四轮循环运算,每一轮包含 16 个操作步骤。
2024-11-07 20:09:09
1024
原创 后台管理系统模版pure-admin
答:没有,所以我们可以使用一些"通用"的基础模板,在这个基础上开发提高效率。是一款开源完全免费且开箱即用的中后台管理系统模版,我们可以先来体验下。既然这么多一样的地方,有必要每次开发后台管理系统,都重新创建一套吗?目标:拉取模板项目,并启动浏览模版网页。用户遇到安装报错请在命令前加上。,请执行下面命令进行安装((推荐优先安装长期维护。
2024-11-05 20:15:57
899
1
原创 阐述对鸿蒙生态的认知和了解,并对鸿蒙生态的崛起进行简要分析
鸿蒙操作系统是一个分布式操作系统,它具有分层架构。内核层包括Linux内核、LiteOS等多种内核,能够适应不同设备的资源和性能需求。例如,在智能穿戴设备这种资源受限的场景下,LiteOS内核可以发挥低功耗、高效能的优势;而在智能手机等设备中,Linux内核则可以提供更强大的功能支持。- 系统服务层提供了诸如分布式软总线、分布式数据管理和分布式任务调度等关键服务。分布式软总线就像是一条无形的“信息通道”,它能够让不同设备之间实现高效、稳定的连接,实现设备之间的互联互通。
2024-11-02 17:47:55
1152
原创 Navigation组件页面跳转
在单列模式下,他是一个页面,在双列模式下,他是左侧边栏,右侧是路由界面。Navigation里面展示的内容不是路由栈的内容,叫导航栏。
2024-10-31 11:35:37
474
原创 跨平台实现实时通讯
你可以向服务器发送消息并接收事件驱动的响应,而无需通过轮询服务器的方式以获得响应,比较典型的应用场景就是即时通讯(聊天)系统。注意:其实 Socket.IO 不仅仅是封装了 WebSocket,还有基于 Ajax 的长轮询机制,在不支持 WebSocket 的环境中会自动降级为基于 Ajax 的长轮询机制。长轮询机制可以粗暴的理解为在一个定时器中不断的重复发 Ajax 请求,以实现与服务器实时通信的功能。进行的二次封装,封装了更多的业务层面的逻辑,如身份认证等、事件驱动等。在建立连接时服务端会通过。
2024-10-30 20:19:04
568
原创 跨平台开发支付组件,实现支付宝支付
效果图:: 在生成预付订单之后页面中需要弹出一个弹层,弹层中展示的内容为支付方式(渠道),由用户选择一种支付方式进行支付。该弹层组件是以扩展组件 uni-popup为核心的,关于 uni-popup组件的typemaskClick。
2024-10-29 19:29:18
882
原创 uni-app跨平台开发小程序表单校验
验证中文姓名正则验证身份证// 验证表单数据的规则mobile: {rules: [{ required: true, errorMessage: '手机号不能为空' },{ pattern: '^[1][3-9][0-9]{9}$', errorMessage: '手机号格式不正确' }},code: {rules: [{ required: true, errorMessage: '验证码不能为空' },
2024-10-27 08:44:43
941
原创 鸿蒙中常见的性能优化
应用启动可以分为冷启动和热启动,当应用启动时,后台没有该应用的进程,这时系统会重新创建应用的进程, 这种启动方式就叫做冷启动;而热启动是当应用程序已经在后台运行,用户再次打开应用程序时,应用程序仍然在内存中,可以直接从内存中加载并继续之前的状态,而不需要重新初始化和加载资源。
2024-10-24 19:53:25
1196
原创 Worker线程的使用
Worker主要作用是为应用程序提供一个多线程的运行环境,可满足应用程序在执行过程中与主线程分离,在后台线程中运行一个脚本操作耗时操作,极大避免类似于计算密集型或高延迟的任务阻塞主线程的运行。由于Worker一旦被创建则不会主动被销毁,若不处于任务状态一直运行,在一定程度上会造成资源的浪费,应及时关闭空闲的Worker。创建Worker的线程称之为宿主线程,Worker自身的线程称之为Worker线程。创建Worker传入的url文件在Worker线程中执行,可以处理耗时操作但不可以直接操作UI。
2024-10-19 10:40:57
596
原创 创建TaskPool任务组
taskpool.execute(任务名,执行权重优先级)标注,且仅支持在.ets文件中使用。实现任务的函数需要使用装饰器。
2024-10-17 20:58:32
167
原创 RelativeContainer 相对布局, 布局优化
因为布局过度嵌套会导致应用内存增加,且会影响应用的帧率导致丢帧增加,所以开发者在写列表这类循环组件的代码时,需要特别考虑对其布局进行优化。一般而言布局的最大嵌套层级控制在5-8层左右即可,过度的优化布局会导致代码开发难度加大,代码不易于阅读理解,增加后续的维护成本,不利于多设备的适配,且也不会带来特别显著的性能提升。通过相对布局对代码进行优化,使得其最大嵌套层级为2层。相对布局组件,用于复杂场景中元素对齐的布局。优点:减少层级嵌套,优化性能。缺点:不好维护代码。
2024-10-14 21:29:47
458
原创 搭建广告展示页Start
场景: app冷启动/热启动-有广告需求,就打开广告页,没有的话就去登录或者主页有的app有的需要广告页,有的不需要,搞个配置呗!!!通过首选项配置存储我们的一些常用配置,比如要不要广告页,还有广告页的路由地址,点击广告页跳转的链接,广告页倒计时的秒数在入口处进行判断是否需要广告页,需要的话,跳转广告页-广告页根据设置的参数进行渲染广告页能不能设置???
2024-10-13 11:27:13
354
原创 HAP、HSP、HAR区别,OHPM私仓
编译态复用,不支持在配置文件中声明abilities、extensionAbilities组件,不支持在配置文件中声明pages页面,支持Navigation组件导航。支持在配置文件中声明abilities、extensionAbilities组件,支持在配置文件中声明pages页面。运行时复用,不支持在配置文件中声明abilities、extensionAbilities组件,支持在配置文件中声明pages页面。Entry:应用的主模块,用于实现应用的入口界面、入口图标、主特性功能等。
2024-10-12 20:32:21
1021
原创 鸿蒙富文本显示
中width,height,size,layoutWeight四个属性。由于padding,margin,constraintSize属性使用时与通用属性描述不符,暂不支持。RichText组件适用于加载与显示一段HTML字符串,且不需要对显示效果进行较多自定义的应用场景。RichText组件仅支持有限的通用属性和事件。异步执行JavaScript脚本,并通过回调方式返回脚本执行的结果。runJavaScript需要在loadUrl完成后,比如。网页加载结束时触发。
2024-10-12 20:22:27
662
原创 使用 Emitter 通知触发事件
一个场景是:登录成功的时候,更新首页试题数据。2.在首页绑定更新数据的事件。3.在登录成功之后触发事件。1.统一维护事件ID。
2024-09-27 16:53:29
214
原创 解决键盘弹起上抬顶部的问题,绑定手势问题
在键盘弹起时不会上抬页面的顶部区域,提高用户体验。可以设置虚拟键盘抬起时压缩页面大小为减去键盘的高度。组件可见区域变化时触发该回调。键盘弹起时触发录音状态为默认,清空搜索框内容。手势识别成功后可以通过事件回调通知组件。gesture : 绑定的手势类型。onAction:响应手势事件。
2024-09-27 10:45:00
529
原创 【团队协作】-git代码管理工作流程
当本地仓库与远程仓库中的同一个文件内容都有修改的时候,在进行代码更新的时候会存在冲突,git工具会先自动合并,如果自动合并失败就需要手动合并了,合并完之后再执行 git add . 和 git commit -m 来完成新版本的提交。比如:我们要基于master分支的代码来开发登录功能,可以通过如下命令将master上的代码备份到login分支上。切换分支:可以在不同分支间切换,一旦进行了分支切换,工作区的内容也会自动变为该分支下的代码。比如:我们可以将login分支上的所有版本合并到master上。
2024-09-23 19:19:18
428
原创 混合开发应用侧-JSBridge,在加载的网页中调用原生能力
将资源加到 src/main/resources/rawfile 中。同上添加交互的方法,方法名。
2024-09-21 20:25:34
707
原创 混合开发-JSBridge
混合开发是一种融合了原生开发和Web开发优势的移动应用开发方式。具体来说,混合开发通常指的是利用一种框架或平台来创建应用程序,这种程序结合了原生应用的一些功能和特性(比如访问设备的摄像头、相册、GPS、蓝牙等),并且使用Web技术(HTML5、CSS和JavaScript)来编写大部分的应用代码。
2024-09-21 20:01:43
654
原创 获取多媒体相册的内容
const assets = await phAccessHelper.getAssets(fetchOption) // 获取资源。const photoAssets = await assets.getAllObjects() // 获取所有图片。{ text: '取消', color: $r('app.color.font_sub') },{ text: '立即开启', color: $r('app.color.brand') }// 转换成 PhotoAsset 对象。// 获取屏幕截图列表。
2024-09-19 21:16:42
537
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人