- 博客(15)
- 收藏
- 关注
原创 微信小程序-ios环境下webview打开的h5页面replace跳转方式不生效问题
摘要:iOS环境下location.replace()无法阻止返回中间页的问题,可通过history.replaceState()+location.reload()解决。该方法先替换历史记录再刷新页面,避免返回时重现中间页逻辑。针对iOS环境封装了locationReplaceUrl()函数,其他环境仍使用标准location.replace()。这种方案能有效防止中间页逻辑重复执行导致错误。
2026-01-23 15:56:50
254
原创 微信小程序-日常开发体验提升小巧思--持续更新
小程序开发中导航栏与滚动问题的解决方案:1) 自定义导航栏需通过getCurrentPages()判断页面层级,无上一页时显示home键;2) 返回按钮失效时可在fail回调中跳转首页或退出小程序;3) iOS下拉灰边问题可通过CSS的overflow:hidden或使用scroll-view组件并设置bounces=false解决。这些方法优化了小程序导航和滚动体验。
2026-01-20 16:09:29
246
原创 微信小程序-横向轮播时,轮播高度随内容高度动态撑开
摘要:本文介绍了小程序轮播图高度自适应解决方案。通过获取屏幕宽度计算缩放比例,动态计算每页图片行数和总高度(图片高度+间距),实现轮播图高度随内容自动调整。关键步骤包括:1)计算屏幕与设计图比例;2)根据每页图片数计算行数和初始高度;3)轮播切换时重新计算高度。该方法解决了固定高度导致的空白问题,使轮播图展示更加美观。核心代码包括高度计算公式和滑动事件处理函数。
2026-01-19 16:23:28
288
原创 微信小程序tab模块滚动至顶部导航栏置顶效果实现
摘要: 本文实现页面滚动时Tab区域动态置顶效果。通过监听滚动事件,当Tab区域滑动至导航栏下方时触发置顶,离开时取消置顶。关键技术点包括:1) 使用fixed属性实现导航栏置顶;2) 通过boundingClientRect获取Tab区域位置;3) 计算滚动临界值判断置顶时机;4) 处理导航栏高度适配不同机型;5) 背景图无缝衔接处理。最终实现导航栏和Tab区域双置顶效果,并确保背景图展示连贯性。
2026-01-19 13:26:49
819
原创 Ineffective mark-compacts near heap limit Allocation failed - JavaScript heap out of memory 运行报错解决
问题描述项目运行编译后,频繁出现运行中断的问题,需要重新执行命令 yarn serve 才行报错内容<--- JS stacktrace --->FATAL ERROR: Ineffective mark-compacts near heap limit Allocation failed - JavaScript heap out of memory大概意思就是说js 堆内存不足原因分析:项目大,启动或打包会抛出内存溢出,需要扩展node服务器内存解决方案:参考文章:
2022-03-30 13:28:44
10889
1
原创 node.js 安装和配置
参考: https://www.cnblogs.com/feiye512/p/12539306.html下载地址:https://nodejs.org/zh-cn/第一步:下载 nodeJS安装包第二步:双击运行下载后安装包第三步:指定node的安装路径,点击下一步第四步:可以选择 Add to PATH 将node直接添加到环境变量中,点击下一步,安装Node.js runtime 运行环境npm package manager npm包管理器online documentation
2021-03-03 19:14:34
1574
1
原创 vue导出复杂Excel表格
记录实现复杂表格导出功能:原图:导出效果:实现过程:第一步:安装yarn add file-saver xlsx第二步:引入Blob.js 和 Export2Exvel.js 两个js文件这里放置目录 src/util/Blob.js src/util/Export2Excel.js文件源码(网上copy来的)://Blob.js(function (view) { "use strict"; view.URL = view.URL || view.web
2021-03-03 18:13:13
3194
3
原创 vue 使用webpack打包,app.js 文件过大问题
打测试包的时候,app.js 文件大小将近7M,导致页面首次进入,加载速度很慢。又打了一个生产包做对比,结果生产包 app.js 文件只有 1M 左右。可见在打测试包和生产包时,用的配置是不一样。解决方法:在 .env.development 中加上 NODE_ENV = production可以让测试打包时的配置和生产包保持一致。...
2020-11-03 11:59:49
2001
原创 身份证、手机号、邮箱、银行卡、企业税号等正则校验
身份证号正则校验:前6位首位不为0的数字,中间年份 18|19|20 后面两位数字, 月份 1到12月, 日期 1到31, 最后四位前三位数字,最后一位 数字 | X | x/^[1-9]\d{5}(18|19|20|(3\d))\d{2}((0[1-9])|(1[0-2]))(([0-2][1-9])|10|20|30|31)\d{3}[0-9Xx]$/手机号正则校验/^1[3456789]\d{9}$/固定电话校验开头为0的3到4为区号,加符号 - (或者不加) 号码7到
2020-07-02 10:29:03
10145
2
原创 vue-awesome-swiper 悬停效果实现
轮播实现鼠标悬停效果,实际上就是用 mouseover、mouseleave 两个事件去实现,但是关键在于这两个事件怎么使用才能达到理想的效果。
2020-05-27 11:51:04
1995
原创 vue使用原生canvas绘制海报
前段时间,公司项目要求绘制商品的分享海报,当时尝试使用了html2canvas,但是后来发现,它只有在Safari浏览器上面效果比较理想,但是在Android手机上面,各种移位,总之就是不能生成完整的图。虽然后面有尝试过在绘制过程中加一个延时,但是效果还是不太好,最后还是决定使用原生canvas来制作了。过程虽然麻烦些,但是最终的效果还是不错的。先上一张效果图下面是我整理的绘制过程前期准备 <div class="hidden" style="display: none;">
2020-05-26 18:06:59
2977
1
原创 NodeJS访问服务器的几种方法
1.使用fetch()访问fetch是ES6中新增的方法,用来与服务器进行交流。(1) fetch请求中的get方式fetch(url).then(data=>data.json()).then(res=>{ console.log(res);});需要传递参数的情况下,可以在url中以"?"进行参数传递。如:url = “http://localhost:9000?id...
2019-10-14 23:55:02
1336
原创 nodeJS——HTTP服务器处理请求
HTTP服务器http服务器的创建流程 //引入模块 var http = require('http'); // 创建服务 http.createServer(function(req, res) { //响应头 res.writeHead(200,{ 'Content-Type':'text/html;charset=utf-...
2019-08-11 18:48:05
1297
原创 nodeJS文件的同步和异步读写操作——fs文件系统
fs异步读文件导入文件模块:无论是同步还是异步读、写文件都必须要导入文件模块。let fs = require('fs');异步读取文件数据方法: fs.readFile(path[, options], callback)path:文件名options: encoding:编码格式,默认为nullflag: 文件系统标志 默认为‘r’,表示打开文件用于读取,...
2019-08-05 21:40:17
5528
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅