js
bangleilei
这个作者很懒,什么都没留下…
展开
-
通过自定义指令实现 element-ui的tooltip组件 文本长度超出显示不超出不显示
通过自定义指令实现 element-ui的tooltip组件 文本长度超出显示不超出不显示原创 2022-01-26 13:30:47 · 3716 阅读 · 2 评论 -
清除vue的keep-alive的页面内指定页面的缓存
1.需求背景自定义页面的tab 类似chrome浏览器的标签页页,如图切换要求为1、打开的页面切换要保留页面上的数据如:页面的搜索条件选项和表格数据等。2、关闭页面再打开时需要重新加载页面。2.出现问题使用keep-alive 缓存子页面,确实可以达到 需求 1 的要求,但是关闭了这个页面在打开的话页面缓存依然存在。3.解决方案1.查找了keep-alive的清除缓存的方案,发现官方并没有提供相关方法。所以先想到的是,重新打开页面链接后面增加一个随机数的参数。但是需要区.原创 2021-09-14 13:30:25 · 1382 阅读 · 2 评论 -
js代码简写小技巧
分享一些我常用的代码优化技巧1. 多表达式多 if 判断我们可以在数组中存储多个值,并且可以使用数组include方法。// 长if (x === 'abc' || x === 'def' || x === 'ghi' || x ==='jkl') { //logic}// 短if (['abc', 'def', 'ghi', 'jkl'].includes(x)) { //logic}2. 简写 if else如果 if-else 的逻辑比较降低,可以使用下面这种方式镜像简..原创 2021-02-05 09:15:25 · 264 阅读 · 1 评论 -
ES6之Set,Map的区别
简述:Set 和 Map 主要的应用场景在于 数据重组 和 数据储存。Set 是一种叫做集合的数据结构,Map 是一种叫做字典的数据结构。集合 与 字典 的区别:共同点:集合、字典 可以储存不重复的值不同点:集合 是以 [value, value]的形式储存元素,字典 是以 [key, value] 的形式储存集合(Set):ES6 新增的一种新的数据结构,类似于数组,但成员是唯一且无序的,没有重复的值。Set 本身是一种构造函数,用来生成 Set 数据结构。Set 对象允许你储存原创 2021-02-01 10:02:22 · 2067 阅读 · 0 评论 -
js事件的防抖和节流
1.事件防抖在函数频繁触发时在设置特定时间段内只调用一次,从而达到多次变成少次,从而缓解浏览器或者服务器压力,比不影响功能。如:window.resize 和 mousemove 触发时频率特别高,可以在一定时间内调用一次,就能实现需求。代码实现 var demoFn = function(e){ console.log('我是当前函数',this,e) } function throttle(fn,during) { let star原创 2020-12-19 12:38:36 · 207 阅读 · 0 评论 -
根据对象路径获取对象的value
// 获取value的方法 obj为要获取的对象,path是路径 用.链接var getPropByPath = function (obj, path) { let tempObj = obj path = path.replace(/\[(\w+)\]/g, '.$1') path = path.replace(/^\./, '') let keyArr = path.split('.') let i = 0 for (let .原创 2020-06-02 09:35:57 · 596 阅读 · 0 评论 -
根据对象的路径修改对象下的属性
项目中遇到一个需求,循环显示表单例如input radio之类的,表单的值要根据返回数据配置的路径放在指定位置。例如:{ name:'用户姓名', type:'input', valPath:'a.b.c'}就是显示出用户姓名的input,input的value要放到a对象下的b对象下的c,且a对象初始化值可能是空。下面是设置函数var setVal = function (obj, value, ...keys) { keys.reduce((acc, cur, i原创 2020-06-02 09:29:25 · 523 阅读 · 0 评论