自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Element-Table-ToggleRowSelection实现取消选中

业务场景点击上面的删除联动下面的表格。分页之后删除也会联动下面的表格。(比如我第一页都选中,之后点击第二页。删除第一个也就是删除表格第一页的第一个)技术支持@selection-change:当选择项发生变化时会触发该事件(上面的数据就是这个产生的)toggleRowSelection:用于多选表格,切换某一行的选中状态,如果使用了第二个参数,则是设置这一行选中与否(selected 为 true 则选中)问题点1. 当点击上面的删除,下面的表格并没有联动取消选中2. 当第一页全选,再第二

2022-01-17 18:09:53 4484 6

原创 uniapp直接(打开/安装)apk/ipa包

应用场景:当你遇到了别人给你或者请求一个apk包或者ipa包时,类似于:http://t123/TDJ/Clientdown/tdj_ob_official.apk你通过plus.runtime.install去安装的时候报错:WGT安装包中manifest.json文件不存在其实你直接打开这个包就可以下载的,通过浏览器打开就可以了,就一句话okplus.runtime.openURL('http://t123/TDJ/Clientdown/tdj_ob_official.apk')有用记得点

2021-11-04 12:30:04 3861

原创 keep-alive动态缓存(配合vuex)

需求:页面顺序,从A到B到C,对于B 页面,进入C页面时,需要缓存,进入A页面时,不需要缓存,A进入B的时候是要刷新的。所以,问题就是,如何让keep-alive 缓存动态进行?思路就是:动态改变keep-alive的include数组。首先创建A,B,C页面-----a.vue<template> <div> <div @click="handleGo">a页面</div> <input /> </d

2021-08-09 22:03:48 899

原创 Vue实现短信按钮倒计时

业务场景:点击按钮,然后按钮禁止,出现倒计时直接上代码:---html<button :disabled="abledBut" @click="alipayWithdrawals"> 提现 <text v-if="abledBut">({{setTimeNum}}s)</text></button>---jsdata() { return { abledBut: false, //是否禁止 setTimeNum: 10,

2021-07-20 10:24:16 568

原创 vue实现单击选中再次单击取消

使用场景:当你写一个v-for循环出一个列表,在写一个点击事件,点击之后给一个class,列表某一个颜色突出,在点击取消颜色突出的场景1.选中赋值的变量不是数组时-------html<div :class="['recentOrderBut',recentOrdersArray == item.value ? 'recentOrderActive' : '', ]" v-for="item in recentOrdersDic" :key="item.value" @clic

2021-07-07 10:28:08 3470

原创 react再次点击antd的Modal弹出框,里面的input值不更改

运用场景:表格的每行有修改按钮,点击修改按钮触发弹出框,显示当前行的数据,然后进行修改问题:第一次点击的时候没有问题,但是第二次点击其他的时候,出现的还是上次的值解决方案:每次点击model弹出框的关闭时,把model里面的子dom销毁就好了方法:model里面要有个方法:destroyOnClose={true}<Modal title="修改" visible={showStatus === 1} onOk={this.modifyHandleOk} destr.

2021-04-21 11:00:51 1770

原创 React配置反向代理(报错:Access to XMLHttpRequest at 或 proxy is not a function)

重要的事情说3遍:按照我这个能解决跨域!按照我这个能解决跨域!按照我这个能解决跨域!近期在学习react,然后自己做一个小项目,但是遇到了一个跨域问题。解决这东西我有做过,但是在react中还是第一次做,在此做一下记录。按照网上一大堆的篇章里操作了一下,会报一个proxy is not a function!你们真的是在给我挖坑呀解决办法首先在src下面创建setupProxy.js文件,里面的内容//const proxy = require("http-proxy-middlewa

2021-04-16 17:45:32 1520 4

原创 app应用base64图片保存到手机相册和分享到微信(uniapp)

最近做了一个含有二维码的海报到手机相册和分享到微信好友里面,图片是后端生成好的,传过来的格式是base64格式的,因为图片比较大,使用文档的保存和分享并没有什么用,有可能我用的不对吧,反正没有我想要的效果。如何实现呢?我们先实现保存到手机相册在去实现分享哈。安卓和ios都可以使用。机型我没有太多的去测试,反正我们公司的ios和安卓都可以。一.base64图片保存到手机相册(封装)export function base64DowImg(base64){ // 创建一个Bitmap是原生图片对象

2021-04-13 16:17:45 1943 6

原创 uniApp实现二维码带中间logo图(uQRCode插件)

需求:在页面内制作一个二维码,中间带一个公司的logo图,用户扫一扫在我们app注册。我们公司是在app里面的页面使用,其他的应该也是可以的。使用的插件:我使用的是uniapp插件市场的一个插件,比较不错插件链接首先我来说这个插件最简单的使用,中间不带logo图的使用首先先下载他的压缩包解压后是一个js文件(uqrcode.js)把这个js放在一个文件里,文件名字随便取,我是取js的名字(uqrcode),然后放在自己的项目中。不带logo的很好做的,插件官网链接里面有步骤,一步一步的

2021-01-18 17:34:20 4747 2

原创 Avue的upload数组图片上传以及删除后上传又出现的问题

近期使用Avue开发上传图片碰到了一个问题,官方也有这个问题,在此记录一下这个问题。Avue官网的avue-crud的type=upload有一个array类型的,出现是下面图的样子注意坑:按理说我们点击删除一个图片就剩下一个,然后上传一个又变成两个了,结果不是你们想的那样,删除一个,上传一个,结果是三个,删除的没有真正的删除,你们可以去Avue官网去看看这个坑看坑链接1.删除2.上传是不是很神奇,那该怎么去解决呢?那我们继续往下面看注意看注释!!!注意看注释!!!注意看注释!!!

2020-12-29 15:23:01 7271 5

原创 uniapp实现H5打包

1.找到manifest.json—h5配置2.点击发行—H5打包3.配置一下4.双击打开打包好的H55.打包发给后端

2020-11-22 16:45:14 3670

原创 uniapp实现app跳转app

需求:公司的app跳转公司的另一个app注意看注释!!!注意看注释!!!注意看注释!!!如何实现呢,首先你要理解一下的东西Android平台设置UrlSchemes,实现被第三方应用调用iOS平台设置UrlSchemes,实现被第三方应用调用iOS平台设置应用访问白名单(LSApplicationQueriesSchemes)判断第三方程序是否已存在调用第三方程序调用第三方程序打开指定的URLplus.os.name,返回你手机是安卓还是苹果问题:判断第三方程序是否存在的isApp

2020-11-22 16:18:49 3593 2

原创 uniApp实现h5页面唤醒app

说一下最近公司的需求公司目前需要后台向每个用户发送一个带链接的短信,然后点击链接唤醒app。注意app配置ios,androi。app记得打包h5需要window.location.href进入逻辑当用户点击链接进入h5页面,然后再h5,之后h5页面判断手机有没有某款app(我开发的时候自己公司的app),有的话直接唤醒app,没有的话进入应用市场下载。我们后端小哥哥给我一个app下载链接,安卓进入应用宝下载,苹果进入appStore进行下载。我也不知道这个链接他是怎么实现的,因为我目前不

2020-11-22 15:37:10 7997 7

原创 Avue搜索栏自定义二级联动

需求:在Avue搜索栏自定义省市联动框就是这种的省市区多级联动,其实可以用avue-crud来做,但是需求不一样,这里就不多说公司的需求了,反正avue-crud不好实现公司的需求,所以我就使用自定义搜索栏来实现。如果不了解的还是先去看看avue文档吧下面我们就来说如何去实现这个需求切记看注释!!切记看注释!!切记看注释!!1.首先使用slot插槽去添加自定义select框(注意看注释)首先searchslot: true,(意思是开启搜索栏插槽)然后slot对应prop去创建插槽(s

2020-11-14 16:41:06 7506 2

原创 uniApp将本地图片转base64格式

比如说,你将图片放在static文件夹中,那样我们该如何去转为base64格式呢?我百度了一些方法,发现有一个uniApp插件专门去将图片转base64格式插件:插件传送门1.首先我们安装这个插件2.然后在项目中找到插件的文件夹引入到需要的页面里面import { pathToBase64, base64ToPath } from '../../js/image-tools/index.js'每个人的安装的地方不同,找到image-tools/index.js就行,然后引入3.下面就可以使

2020-10-19 20:59:15 9999 3

原创 Vue.cli3使用axios向后台请求文件并下载到本地

一.需求最近公司需要一个身份证读卡功能的需求,不过用这个需求必须在本地电脑下载一个压缩包去安装这个软件1.正常来说我们就直接请求后台写的接口// 点击查看文档 async handleText() { let res = await this.$http.get('/qh/download.do') console.log(res) },这样写的话。会过来一些乱码样子的东西这并不是我们想要的东西,也不能自动下载什么东西2.然后我们现在给axios添加.

2020-08-05 10:54:07 901

原创 Vue.cli3使用axios中post向后台传数组包对象类型参数(qs篇)

1问题向后端传数组包对象类型的参数(下面图片为例子)解决我们改怎么解决呢?首先我们定义一个跟后台要接收的参数名一样的变量名然后对这个变量名qs处理一下// 点击提交 handleUpTo() { let ldinfo = this.ruleForm.ldinfo console.log(ldinfo) //这里是上面的那些值 let self = this Qs.stringify({ ldinfo: ldinfo }, { array.

2020-08-05 10:35:31 2796

原创 Vue.cli3使用axios的post给后台传数组参数(qs篇)

1.问题很多人在向后端请求要携带数组参数时,很多人是这样的这样传过去的话,100%会出问题2.解决我们可以这样处理,利用qs去转换一下,如果你安装了axios,就不要去安装qs了,axios里面包含了qs,你只要引入就OK了(import Qs from ‘qs’)比如我们要传过去这种的数组参数 let ldidList = [] for (var i = 0; i < this.tableNum.length; i++) { ldidList.push(this.tabl.

2020-08-05 10:14:25 4925 1

原创 vue.cli3使用elementUi的upload图片转base64后上传后台

使用elementUI图片上传的时候总会因为一个值而烦恼—action这个怎么说呢,其实里面可以给空值的,只是会报一个错,其实不怎么碍事,也可以放一个接口,只不过你要考虑一个跨域的问题,如果不放就让它空着吧1.使用elementUI的upload这里基本就可以这样写了,如果需求不同可以看看elementUi的文档添加几个需求<div class="upLiadImg"> <el-upload class="avatar-uploader" action=""

2020-08-03 21:07:26 989

原创 vue.cli3解决跨跨域问题Access to XMLHttpRequest at ‘http://192.168.88.228/login/Login?phone=19939306484&pass

当浏览器控制台出现Access to XMLHttpRequest at ‘http://192.168.88.228/login/Login?phone=19939306484&password=111’ from origin ‘http://localhost:8080’ has been blocked by CORS policy: The value of the 'Access-Contr说明是跨域问题一.说跨域,就要先说说‘同源策略’1、同源策略/SOP(Same origin

2020-07-27 20:55:30 90280 5

原创 vue.cli3设置单独路由页面全屏切换

不是全屏的时候是全屏的时候首先思想:获取当前路由页面的节点,对的节点操作定位,脱离文档流,top:0,;left:0;1.用ref获取当前路由页面最大的div,也就是template包的第一个div,也可以是其他的<template> <div ref="index"> //ref标识 <Title :refDome='refDome'></Title> </div></template>2.如果要

2020-07-23 16:13:23 1100

原创 Vue.cli3 PC端px自适应转换rem

1.安装第三方flexible库npm install lib-flexible2.在main.js里引入lib-flexible一定要引入,不然不行import 'lib-flexible3.配置meta标签,在index.html文件当中(看看是否有没有,有了就不要写了)<meta name="viewport" content="width=device-width, initial-scale=1.0">4.安装px2rem工具npm install px2rem-

2020-07-22 21:02:41 1438

原创 微信小程序使用es7的async语法

1.在小程序的开发⼯具中,勾选 es6转es5语法2.复制 facebook的regenerator库中的扩展代码里面的代码不止这些,我只是截图这些,里面的代码都要复制3. 在小程序目录下新建文件夹 lib/runtime/runtime.js ,将代码拷贝进去4.在每一个需要使用async语法的页面js⽂件中,都引入(不能全局引入)import regeneratorRuntime from '../../lib/runtime/runtime';然后就直接使用async await就可

2020-07-21 11:05:56 422

原创 获取手机号偶尔报错(code失效问题)

前言:获取手机号的时候有时候成功,有时候失败,主要原因是我们获取的code失效。正常的点击逻辑用户点击第一次获取手机号的时候是必须要成功的,成功后点第二次的时候报错也没关系,因为第一次成功了,已经有了数据,第二次报错并不影响什么,主要第一次必须成功就可以了。下面我们要怎么解决第一次必须成功呢?首先我们要知道原因是code失效导致的,所以我们第一步要在点击获取手机的按钮之前要有code代码呈现在微信生命周期获取code,并放在data里面保存,我实在onShow生命周期进行保存。wx.lo

2020-07-21 10:46:09 5243

原创 微信小程序和Java共同实现支付功能

实现支付的流程:1)首先调用wx.login方法获取code,通过code获取openid;2)java后台调用统一下单支付接口(这里会进行第一次签名),用来获取prepay_id;3)java后台再次调用签名(这里会进行第二次签名),并返回支付需要用使用的参数;4)小程序前端wx.requestPayment方法发起微信支付;5)java后台接收来自微信服务器的通知并处理结果。一. 首先调用wx.login方法获取code,通过code获取openid;传送门:本人写过的获取openid文档

2020-07-09 21:51:58 1678

原创 微信小程序解密手机号---Java后台解密手机号

一. 敏感数据获取步骤小程序端登录后,得到登录时获取的 code(仅可使用一次)App({ onLaunch: function () { // 登录 wx.login({ success: res => { // 发送 res.code 到后台换取 openId, sessionKey, unionId console.log(res.code) } }) }})

2020-07-09 21:24:19 1313 1

原创 微信小程序获取openId和session_key

1.首先先获取appId let Id = wx.getAccountInfoSync();2.然后获取用户的code wx.login({ success:function(res){ console.log(res) } })3.最后获取密钥secret4. 获得session_key和openId官方提供了HTTP接口,1-3步出来的值,对应的放在这个接口上https://api.weixin.qq.com/sns/jsc

2020-07-08 22:44:03 692

原创 微信小程序获取appId

wx.getAccountInfoSync()调用这个方法后就会获取到appId

2020-07-08 22:20:59 2855

原创 后端传过来的富文本给里面的img加内联样式

思想:代码图片:代码:let strImg = 富文本内容; let imgText = '<img'; let count = 0; while (strImg.includes(imgText)) { strImg = strImg.substring(strImg.indexOf(imgText) + 3) count++ } let d1 = 富文本内容; let d2 = ""; let d3 = ""

2020-07-08 22:09:18 609

原创 微信小程序相同商品但是不同价格不同规格加入购物车方法

首先你先要了解数组的 findIndex、map、indexOf,push方法代码思想:先把缓存中的cart获取出来findIndex找cart里面的商品id是否等于当前商品详情的id,存在返回下标,不存在返回-1map映射出cart里面的价格是否等于当前商品详情的价格(cart里面的商品都会map出来,符合的当前下标位置是true)indexOf查找map的返回值(当然要while都循环出来),会得到当前为true的下标然后push到一个数组中然后开始判断了,首先if(index == -

2020-07-08 21:56:55 2353

原创 冒泡和捕捉的执行顺序

我们先了解冒泡和捕捉是什么:冒泡:冒泡是HTML结构盒子,一步一步向上走。捕捉:跟冒泡相反我们来看一个例子:HTML:CSS:JS:图示:首先我们以点击box3为目标事件,当我们点击box3之后的执行顺序:box111,box222,box3,box333,box2,box1。这就很明确了顺序,首先是捕捉----在点击目标代码顺序----在冒泡。先捕捉到结构最外层的bo...

2020-04-03 13:53:34 746

原创 更改json-server默认3000端口

json-server --watch db.json --port 3004

2020-02-12 14:38:15 2788 1

空空如也

空空如也

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

TA关注的人

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