- 博客(25)
- 问答 (1)
- 收藏
- 关注
原创 小程序前端支付流程
后端服务器接收到前端传来的支付订单数据后,调用微信支付接口,结合小程序的AppID、商户号(MchID)、支付密钥(Key)等信息,生成支付参数。支付参数包括prepay_id(预支付交易会话标识)、nonce_str(随机字符串)、timestamp(时间戳)、sign(签名)等。后端将生成的支付参数返回给前端。调用wx.requestPayment()发起微信支付,唤醒支付工作台,进行支付,并将支付参数传递给微信服务器。前端根据用户选择的商品,生成支付订单数据,包括订单号、支付金额、商品描述等。
2025-03-06 10:14:02
222
原创 grid网格布局
是grid-template-rows、grid-template-columns、grid-template-areas、 grid-auto-rows、grid-auto-columns、grid-auto-flow这六个属性的合并简写形式。是grid-template-columns、grid-template-rows和grid-template-areas这三个属性的合并简写形式。grid-row属性是grid-row-start属性和grid-row-end的合并简写形式。
2024-11-06 15:56:51
626
原创 JS的Blob、ArrayBuffer、File、FileReader、Object URL、base64和FormData
一个包含有只读原始数据的类文件对象。通俗讲就是不可修改的二进制文件。
2024-09-29 16:56:22
666
原创 await右值和async返回值
类型(有确定的返回值),会立即向微任务队列添加一个微任务。类型,会立即向微任务队列添加一个微任务。函数,但是该函数的返回值本身是**非。函数在抛出返回值时,会根据返回值。的情况如何处理进行了一次修改,return结果值:非。了额外的两个微任务,在。函数,且返回值本身是。函数,且返回值本身是。
2024-07-23 16:54:32
316
原创 js常见继承实现
寄生组合式继承通过创建一个中间对象来继承父类的原型,从而避免了组合式继承中需要调用父类构造函数两次的问题。这种方式有效地减少了不必要的开销,提高了继承的效率。结合了上述两种方法的优点,既可以在子类实例上共享方法,又可以保证每个实例都有自己的属性。优点 简单明了,容易实现,在父类新增原型属性和方法,子类都能访问到。缺点 所有的实例都指向同一个引用地址,修改一个。每个对象实例都会创建一个新的方法。保证每个实例都有自己的属性。超类型的构造函数传递参数。
2024-07-19 10:07:59
162
原创 elementUI 弹窗可移动(vue自定义指令)
弹窗使用:<el-dialog v-dialogDrag></el-dialog>项目main.js引入。
2024-05-07 14:54:05
315
原创 vue中key的作用
2.如果不存在对数据的逆序添加、逆序删除等破坏顺序操作,仅用于渲染列表用于展示,使用index作为key是没有问题的。(2).旧虚拟DOM中未找到与新虚拟DOM相同的key创建新的真实DOM,随后渲染到到页面。②.若虚拟DOM中内容变了, 则生成新的真实DOM,随后替换掉页面中之前的真实DOM。1.最好使用每条数据的唯一标识作为key, 比如id、手机号、身份证号、学号等唯一值。会产生没有必要的真实DOM更新 ==> 界面效果没问题, 但效率低。①.若虚拟DOM中内容没变, 直接使用之前的真实DOM!
2024-03-25 11:20:23
216
1
原创 echart实现地图下探并展示散点图
介绍:实现省级(河南为例)下探,且在数据不变的情况下展示散点完成图: 创建工具函数:引入目录下的所有文件,实现传入地名返回该地方的geoJson(这里使用了动态引用) 3,渲染省级地图和散点 (定义点击事件,为下探操作做准备)4,渲染下一级地图和散点与省级不同的是,需要一个返回按钮(graphic定义),创建对应返回事件,再用setOption重新渲染页面(true代表与原有的配置不合并)。调工具函数getMap() 注册地图。此时会发现一个难处理的点,在只有一组原始数据
2023-11-08 17:05:11
1101
5
原创 this与箭头函数易错点
输出:1 {num:1} (严格模式 undefined {num: undefined})输出:999 {num:1} (严格模式 999 {num undefined})传入的对象没有引入 是最外层作用于 this是window或undefined。箭头函数没有自己的this 往外层找就是window或undefined。
2023-08-24 09:20:26
94
1
原创 uniapp picker组件实现时分秒功能 并初始化当前时间
Change事件,让功能完善(有一点很奇怪,传入的timeRangeArray里的值都是字符串,可是查看e.target.value却是数字类型,这里做了转换)给picker组件的value传入 expectConsTime.split(':') 对应的数组,即可初始化时间。组件mode改为multiSelector多列,range为自己创建范围数据 timeRangeArray。此时功能已经完成,若想要初始时为当前的时间,可根据当前的时间戳转换为。
2023-08-03 14:14:08
2019
原创 图片上传,选中显示图片
这里没有使用默认的input上传,把它display:none了,目的是不使用它的默认显示文件名的样式。注意输出可以更好理解。
2023-06-02 14:51:43
149
原创 全屏上下滚动效果
4,容器监听到滚轮变化时,首先判断其滚动方向,再控制当前页数,调取滚动函数(可传滚动速度,这里省略了)当屏幕尺寸变化时重新获取容器宽度(注意要使用clientWidth,clientHeight)isScrolling相当于节流,不至于出现连续滚动。3,初始化,定义数据,获取屏幕宽高,总页数。2,设置必要样式(缺一不可)
2023-05-31 16:14:37
315
1
原创 原生js实现点击图片全屏预览
display变化时transition不起效果,可以设置定时器,等display为block时由opacity显示过渡效果。
2022-11-30 17:36:59
2126
原创 js去除数组重复元素
数组方法filter去重let arr = ['apple', 'strawberry', 'banana', 'pear', 'apple', 'orange', 'orange', 'strawberry'];arr = arr.filter((item, index) => { return arr.indexOf(item) === index; }) console.log(arr);//...
2022-05-12 21:17:47
744
原创 js冒泡排序和选择排序
冒泡排序:function bubbleSort(arr){ let len = arr.length; for (let i = 0; i < len-1; i++){ for(let j = 0; j < len-i-1; j++){ if(arr[j] > arr[j+1]){ let temp = arr[j]; arr[j] = arr[j+1]..
2022-04-15 17:19:23
240
空空如也
C语言链表插入节点未知错误
2021-06-04
TA创建的收藏夹 TA关注的收藏夹
TA关注的人