js
喝咖啡还是泡茶
这个作者很懒,什么都没留下…
展开
-
vue3 vite批量注册组件
vite不支持require.context的方引入文件,需要使用import.meta.glob原创 2022-07-12 10:42:31 · 537 阅读 · 1 评论 -
el-table toggleRowSelection被动触发select/selection-change事件的解决方案
el-table toggleRowSelection被动触发select/selection-change事件的解决方案场景:接口返回的数据需要列表默认选中,需要调用toggleRowSelection方法,但由于非当前页数据不在数据项内,toggleRowSelection默认触发select事件导致多选数组非当前页数据被干掉解决方案:加锁rowSelectFlag: false // 禁止toggleRowSelection默认触发handleSelectionChangehandleSel原创 2021-11-16 10:50:51 · 6495 阅读 · 3 评论 -
js判断传入值是否为空
js判断传入值是否为空方法1:function isEmpty(val){ return val === '' || val === undefined || val === null}方法2:使用es6的空值运算符空值合并操作符(??)是一个逻辑操作符,当左侧的操作数为 null 或者 undefined 时,返回其右侧操作数,否则返回左侧操作数。function isEmpty(val){ return val??'' === ''}补充:lodash.isNil(val) 可原创 2021-10-09 10:46:45 · 885 阅读 · 0 评论 -
前端实现树的模糊查询
前端实现树结构模糊查询fliterTree(searchObj, list) { const searchData = (searchObj, arr) => { if (!Array.isArray(arr) || arr.length === 0) { return [] } let newarr = [] arr.forEach(item => { // 自定义查询条件,模糊查询原创 2021-09-18 13:51:07 · 709 阅读 · 0 评论 -
浏览器刷新和关闭时显示提示信息
vue 刷新和关闭浏览器时显示提示信息使用onbeforeunload事件mounted() { window.onbeforeunload = e => { e = e || window.event if (e) { e.returnValue = '关闭提示' } return '关闭提示' } }},beforeDestr原创 2021-08-16 20:16:03 · 1054 阅读 · 0 评论 -
vue-router keep-alive缓存策略
vue-route keep-alive缓存策略App.vue中配置keep-alive,通过vuex中的缓存路由数组动态判断是否需要缓存当前组件<template> <div id="app" class="g-root"> <keep-alive :include="$store.state.common.cachedRouteNames"> <router-view /> </原创 2021-08-16 17:05:48 · 389 阅读 · 0 评论 -
el-table默认勾选
el-table默认勾选selected默认为true方法1: setTimeout(() => { this.list.forEach((item, index) => { if (this.hasSelectedList.indexOf(item.id) !== -1) { this.$refs.table.toggleRowSelection(this.list[index]) } })}, 0)方法2: setTimeou原创 2021-07-27 10:41:14 · 615 阅读 · 0 评论 -
js校验字符串是不是正则表达式
校验字符串是否为正则表达式checkReg(val) { let regVal = '/' + val + '/' const isReg = (val) => { let isReg try { isReg = eval(val) instanceof RegExp } catch (e) { isReg = false } return isReg原创 2021-07-27 10:29:09 · 844 阅读 · 0 评论 -
js处理树结构数据常用方法
js处理树结构数据常用方法1. 递归树结构获得全部数据2. 判断树结构同级目录下有无重复数据judgeSameLabel(list) { let flag = false // 设立单独的标识用于中断递归函数 const recursion = list => { if (flag) return false for (let i = 0; i < list.length; i++) { for (let j原创 2021-07-27 10:19:55 · 772 阅读 · 0 评论 -
使用vuex缓存接口请求的数据
使用vuex缓存接口数据import { getMethod } from '@/lib/request'import apiKeyMap from '../config/apiKeyMap'const state = { dataTypeList: null, cacheStates: {} // dataTypeList:'缓存时间'}const getDataTypeList = () => { return getMethod(apiKeyMap.dataS原创 2021-05-21 10:10:24 · 1121 阅读 · 0 评论 -
@input校验table列重复
@input输入内容时同时校验el-table列数据是否重复// @input='colEqualCheck($event,scope.$index,scope.row)'colEqualCheck(e, index, value) { // 检查列重复 this.$set(this.dataList, index, value) this.checkRepeatCol(this.dataList) },check原创 2021-05-17 10:28:20 · 485 阅读 · 1 评论 -
jQuery实现表格的数据拖拽
jQuery实现将一个ant-table的数据拖拽复制到另一个ant-table需求ant-design-vue将一个嵌套在drawer中的table数据拖拽复制到drawer外面的table中效果拖拽中拖拽后HTML<el-button type="text" size="small" class="text-btn" @click="choseField">选择字段</el-button>// 拖拽到table<a-table class="dr原创 2021-05-14 11:11:24 · 438 阅读 · 0 评论 -
@blur检验数组重复并对重复项加后缀
@blur校验数组重复使用场景table嵌套inputinput失去焦点时判断输入的所有值是否有重复项,并对重复项增加01,02,03的后缀实现效果JS部分 data(){ return { repeatTime:new Map([]) //记录每一项的重复次数 } } repeatZhName() { // 重复字段的中文名后加_01 for原创 2021-05-12 16:12:52 · 244 阅读 · 0 评论 -
js判断对象数组中是否包含重复项
js判断对象数组中是否包含重复项isRepeat(arr) { const hash = {} for (let i = 0; i < arr.length; i++) { if (hash[arr[i].componentKey]) { // 名字重复了 return true } hash[arr[i].componentKey] = true } // 名字没重复 return原创 2021-04-20 20:00:41 · 668 阅读 · 0 评论