
JavaScript
JavaScript
前端攻城狮·左大
Talk is cheap,show you the code
展开
-
h5添加水印
此的水印结构为工号-姓名-yyyy/mm-dd HH:MM原创 2022-11-01 16:59:31 · 1304 阅读 · 2 评论 -
基于crypoto 前端AES加密解密
function getAesString(data, pkey, piv) { //加密 var key = CryptoJS.enc.Utf8.parse(pkey); var iv = CryptoJS.enc.Utf8.parse(piv); var encrypted = CryptoJS.AES.encrypt(data, key, { iv: iv, mode: CryptoJS.mode.CBC, padding: CryptoJS.pad.Pkcs7原创 2022-09-26 17:03:25 · 719 阅读 · 0 评论 -
Vue导出多个sheet方法 超好用
话不多说直接上代码,不好用回来打我原创 2022-07-08 08:41:49 · 1149 阅读 · 4 评论 -
基于el-table改造自定义增加列 修改列 以及表格具体判断校验
功能上线 十分开森~~功能描述:基于element-ui的el-table改造,支持自增自定义列,修改当前列信息以及当前列的附加信息,支持修改当前行的信息以及校验,容错回退数据。接下来庖丁解牛首先看一下我的自认为写的很low的改造的table 这是目前我能想到的根据业务需求最优的处理方案了有大神能一段循环代码就可以处理的欢迎提建议赐教自增自定义列提交自增列的信息,批次作为表头信息这是一个集新增编辑于一体的dialong主要注意一下自增列需要注意每次增加的key值要保持不一样,实现方式往期的原创 2022-06-09 15:20:11 · 2231 阅读 · 0 评论 -
Object.keys循环遍历对象的key值求和
传入对象,返回属性名原创 2022-05-23 11:14:32 · 1143 阅读 · 0 评论 -
json转换特殊字符处理
json转换特殊字符处理原创 2022-02-10 10:13:34 · 2087 阅读 · 0 评论 -
Element el-form根据选择条件动态控制表单必填项
Element el-form根据选择条件动态控制表单必填项原创 2022-01-12 12:00:20 · 3624 阅读 · 1 评论 -
修改element-ui中的表格el-table滚动条样式
单独样式的修改: // 滚动条的宽度 /deep/ .el-table__body-wrapper::-webkit-scrollbar { width: 6px; height: 6px; } // 滚动条的滑块 /deep/ .el-table__body-wrapper::-webkit-scrollbar-thumb { background-color: #ddd; border-radius: 3px; }全局样式修改//滚动.原创 2021-12-31 11:34:35 · 815 阅读 · 0 评论 -
JS保留两位小数简单方法
<el-form-item label="礼品总金额 :"> {{ Zprice.toFixed(2) }} </el-form-item> <el-form-item label="审批总金额 :" v-if="auditStatus !== 3" :key="3"> {{ Sprice.toFixed(2) }} &l..原创 2021-12-31 11:08:47 · 297 阅读 · 0 评论 -
this.$forceUpdate()强制刷新 解决 点击下拉框无反应bug
今天碰到一个有意思的bug 就是当下拉框点击的元素项点击不上 但是内部code传值没有问题 摸索了一下度娘在chnege事件末尾添加this.$forceUpdate() ok~~changeareaOptions(vl) { this.$set(this.form, this.form.state, vl) this.$forceUpdate() },...原创 2021-12-10 14:45:44 · 2361 阅读 · 0 评论 -
element-ui 之el-date-picker日期组件 限制禁用选择指定时间
业务需求:预计下单时间只能选择当前日期后7天的时间 也就是一周后的时间实现效果:HTML部分 <el-date-picker :picker-options="pickeroptions" type="date" placeholder="选择日期" style="width: 100%;" v-model="form.date6"原创 2021-12-10 09:17:40 · 1458 阅读 · 0 评论 -
父子组件传参的三种方法
先准备子组件页面准备父组件页面并引用子组件父子组件传值1.props/emit2.emit2.emit2.parent/chifdren3.$ref1.props/$emit方法演示prop 父传子emit 子传父父组件用@监听自定义事件2.$parent/chifdren方法演示原理通过this.$parent/chifdren获取父/子里面data的值 拿来主义附加功能也可以通过这个方法去直接触发要通信组件的方法3.$ref同$parent/chifdren原创 2021-12-07 17:52:54 · 4550 阅读 · 0 评论 -
Element UI el-input 限制只能输入正数,小数点后输入N位(可自定义保留位数)
业务实现场景HTML部分:oninput(form.priceRateForeign, 4)参数1:绑定的值 参数2:保留小数的位数 <el-form-item v-if="qualityQtypeCode == '2'" label="返点:"> <el-input @keyup.native="form.priceRateReturn = oninput(form.priceRateReturn, 2)" v-model="form.priceRateRe原创 2021-12-01 10:25:00 · 2075 阅读 · 2 评论 -
Element-UI 实现el-table复选框默认勾选 回显
el-table默认勾选详解原创 2021-11-30 21:11:23 · 3692 阅读 · 1 评论 -
赋值非空判断简单写法
this.goodsParams = res.rsSkuDomainList&&res.rsSkuDomainList[0];原创 2021-10-20 11:14:51 · 161 阅读 · 0 评论 -
vue字符串逗号切割并换行弹框展示
<el-dialog title="错误消息" :visible.sync="errorDialogVisible" width="30%" center> <span>导入积分发放账号报错了! 报错信息如下:</span> <div id="text" v-html="errorInfo"></div> <textarea id="input">这是幕后黑手</textarea>...原创 2021-07-20 16:43:12 · 2583 阅读 · 0 评论 -
基于element-ui电商管理后台系统项目总结
1.菜单高亮用到element-ui里面的default-active此属性规定 定义哪一个路径那个菜单栏就高亮显示 那么我们可以点击菜单栏的时候 拿到路径放到sessionStorage缓存中 在每次页面初始化的时候赋值回去1. <el-menu background-color="#333744" text-color="#fff" active-text-color="#3594fa" unique-o原创 2021-07-15 10:04:32 · 922 阅读 · 0 评论 -
前端-原生一键复制功能
原理分析浏览器提供了 copy 命令 ,可以复制选中的内容document.execCommand("copy")如果是输入框,可以通过 select() 方法,选中输入框的文本,然后调用 copy 命令,将文本复制到剪切板但是 select() 方法只对 input 和 textarea 有效,对于 p 就不好使最后我的解决方案是,在页面中添加一个 textarea,然后把它隐藏掉点击按钮的时候,先把 textarea 的 value 改为 p 的 innerText,然后复制 text.原创 2021-07-15 09:56:50 · 1305 阅读 · 0 评论 -
防抖实例-短信验证-倒计时
代码实现 <el-form-item label="短信验证码:" prop="verificationCode"> <el-input clearable v-model="addBankCardForm.verificationCode" placeholder="请输入短信验证码"> <el-button @click="getPhoneNumber(addBankCardForm)" slot="append">.原创 2021-07-05 10:51:29 · 376 阅读 · 0 评论 -
解构赋值的应用
结构前 // 解构data对象重命名为res const { data: res } = await this.$http.post("login", this.LoginForm); if (res.meta.status !== 200) { this.$message.error("登陆失败"); return; } else { this.$message.success("登陆成功"原创 2021-06-11 19:27:12 · 526 阅读 · 0 评论 -
表单的预验证
用来校验表单的合法性例如登陆页面校验账号密码填写是否符合定义的规范 如果不符合规范则不予继续向下执行 // 表单前的预校验 通过ref调用validate函数 规则正确返回true 错误返回false login() { this.$refs.LoginFormRef.validate(async valid => { console.log(valid); if (!valid) return; // 解构data对象重命原创 2021-06-11 17:41:59 · 464 阅读 · 0 评论 -
element-ui表单重置
1.el-from里面ref绑定组件 <el-form ref="LoginFormRef" :rules="LoginFormRules" :model="LoginForm" label-width="0px" class="login_from" >2.给btn按钮注册事件 <!-- 按钮 --> <el-form-item class="btns"&.原创 2021-06-11 17:30:53 · 1560 阅读 · 0 评论 -
微信小程序员页面传参(变量)
简单记录一下动态传参的语法 引引加加uni.navigateTo({ url: '/pages/detail/seckilmain?skuCode='+this.groupGoodsSkuCode+'&promotionCode='+this.promotionCode });要跳转的页面接收参数 onLoad(options) { console.log(options, '3++3++3+3+33+3'); this.promotionCode=原创 2021-06-08 16:33:27 · 211 阅读 · 0 评论 -
flag假设法防止按钮重复点击
场景描述:例如商品发布按钮 只限制点击一次 防止重复点击制造重复数据直接上代码先在data李面定义一个变量 flag: true,//确定按钮点击事件onSubmit() { if (this.flag) { this.flag = false; } else { this.$message.error("请勿重复提交"); return; } }这样会限死按钮 只能点击一次 对于原创 2021-05-27 14:48:50 · 377 阅读 · 0 评论 -
常用的正则表达式集合
1 数字:1*$2 n位的数字:^\d{n}$3 至少n位的数字:^\d{n,}$4 m-n位的数字:^\d{m,n}$5 零和非零开头的数字:^(0|[1-9][0-9]*)$6 非零开头的最多带两位小数的数字:^([1-9][0-9]*)+(.[0-9]{1,2})?$7 带1-2位小数的正数或负数:^(-)?\d+(.\d{1,2})?$8 正数、负数、和小数:^(-|+)?\d+(.\d+)?$9 有两位小数的正实数:2+(.[0-9]{2})?$10 有1~3位小数的正实数:3+原创 2021-05-25 19:46:30 · 1186 阅读 · 0 评论 -
解决本地开发图片不显示问题
在本地开发进行调整图片的时候经常因为图片不显示不能快速的调整 提高开发效率原因:接口返回的url没有域名造成的So :我们可以给他拼一个直接上代码methods里面直接封装方法 //地址处理 urlFilter(val) { var val = val + ""; if (val.indexOf("http") != -1) { return val; } else { return this.baseUrl + val;原创 2021-04-19 20:12:44 · 737 阅读 · 1 评论 -
封装方法-处理时间日期格式
功能描述:支持任意格式的时间戳转化成日期格式这里是写在了一个单独的文件里了 用的时候直接引入即可export function timesSeconds(timestamp) { if (!timestamp) { return; } var date = new Date(timestamp); //时间戳为10位需*1000,时间戳为13位的话不需乘1000 const Y = date.getFullYear() + "-"; const.原创 2021-04-19 19:49:44 · 316 阅读 · 0 评论 -
深拷贝简单的写法
let obj2 = JSON.parse(JSON.stringify(obj))原理:将obj对象转换成字符串再将字符串重新变成一个对象 开辟内存空间注意弊端:JSON.stringify(obj)在处理obj对象时 如果对象里面的值有正则的话 处理后正则值变成空字符串,还有函数与日期格式的对象在用JSON.stringify处理时都会出现bug...原创 2021-04-18 14:36:28 · 359 阅读 · 0 评论 -
element-ui限制一张图片上传
需求描述:在做图片上传组件的时候 有时候需求回要求只能上传一张图片bug:element-ui在上传完一张图片后上传按钮还会存在 虽然可以用自带的limt属性加以限制 但是上传按钮依然会存在 且存入数组的值依然会增加解决:可以判断上传后数组的length来控制图片上传的样式 让其上传一张后隐藏上传按钮 达到控制图片上传的数量需求<el-form-item label="礼包主图" prop="goodsimage" :required="true"> <el-up.原创 2021-04-14 12:05:06 · 3335 阅读 · 5 评论 -
JS数组几种常见的操作方法集合
常见四件套 shift unshift pop push1.shift (删前)删除数组的第一项 并返回删除元素的值,注意如果数组为空 则返回undefinedvar oldArray = ["z", "u", "o", "z", "h", "o", "n", "g", "m", "i", "n"]; var shift = oldArray.shift(); console.log(this.oldArray, this.shift);打印结果2.unshift(原创 2021-04-13 11:30:28 · 1080 阅读 · 14 评论 -
页面传参pq方式
应用场景:例如主表页面跳转编辑页面,传递唯一id值,在编辑页面重新调用接口,传id参数,确保每次刷新页面不会造成页面数据丢失PS:由于pq方式传参参数会暴露在url上 如果是做登陆页面涉及敏感数据 比如账号密码就不要用这种方式传参了 后续我会继续更新传参方式 当然大家也可以先参考别的大佬文章。胡不多说直接上代码 其实也就两行代码 废话有点多 哈哈 if (data.id == 'jump') { this.$router.push({ path: '/siteAddYL', qu原创 2021-04-13 10:04:51 · 500 阅读 · 0 评论 -
登陆页面存储密码
登陆页面存储密码 <el-form-item class="other_info"> <el-col :span="12"> <el-checkbox size="medium" label="记住密码" name="type" v-model="checked"></el-checkbox> </el-col> <el-col :span原创 2021-03-31 11:29:03 · 269 阅读 · 0 评论