- 博客(11)
- 收藏
- 关注
原创 Canvas - 实现动画、放大模糊,处理图片的原理
requestAnimationFrame是在`canvas`中实现动画的关键,不同于`setTimeout`和`setInterval`,它不需要设置时间间隔,显示器为60hz,则每秒重绘60次。
2023-09-05 23:04:47
749
1
原创 Vue3动态路由 - 动态添加菜单权限路由以及next
根据登录用户拥有的菜单权限,动态添加菜单路由... , next({ ...to, replace: true })`主要是解决了刷新后导致白屏的问题...
2023-05-11 09:22:25
3775
原创 Mapbox系列 - 实现常用的四种的地图样式(区域、气泡、热力、迁徙)
getLayer: 获取图层: 删除涂层: 设置、更新绘制类属性: 设置、更新布局类属性: 加载自定义图片: 移除导航条addControl: 添加导航条及其位置resize: 刷新。
2023-02-16 17:58:53
2884
10
原创 JS事件循环 - 举例详解
JS中的事件循环JS是单线程执行的,而基于事件循环模型,形成了基本没有阻塞(除了alert或同步XHR等操作)的状态每一个线程都拥有至少一个任务队列 (宏任务)各个任务队列存放不同来源的任务,浏览器可根据需要进行优先级排序以及一个微任务队列:主要用于处理一些状态的改变,UI渲染工作之前的一些必要操作事件循环中每一次循环称为一个 tick事件循环机制:从宏任务队列中取出一个宏任务执行,执行过程中继续将遇到的任务分类放入宏任务、微任务队列当该宏任务执行完毕之后,清空微
2022-05-23 16:11:02
289
1
原创 虚拟DOM - 我理解中的虚拟dom
1、虚拟DOM是什么一句话:虚拟DOM就是用普通js对象来描述DOM结构真实的DOM虚拟DOM2、对虚拟DOM速度的讨论和其它优势首先,虚拟dom存在并不是必要的,反而虚拟dom并不总是比真实dom快,我们也看到也有很多优秀的框架并没有采用虚拟dom,例如Svelte,它依然很快。我们来比较一下时间复杂度,使用虚拟dom:js生成虚拟dom + diff算法 + 渲染必要的dom更新不实用虚拟dom: js操作时间(innerHTML 的总计算量) + 重新创建所有的dom乍
2022-02-22 15:20:29
476
原创 IE兼容 - 缺少xxx的解决方案
ie下报错SCRIPT1003:缺少xxx的解决方案原因:ie下不支持部分es6语法,如:// 不支持data() { return { }}// 支持data: function() {}解决方案:首先根据报错定位是引入了哪个组件导致的定位到组件后在 vue.config.js 中加入如下代码:如我的是因为使用了 vue-gn-components 组件导致module.exports = { transpileDependencie
2021-12-16 16:07:24
1130
原创 Vue - 重载组件的方法
Vue重载组件(常用)activated / injectactivated()/deactivated()当我们想要在进入一个组件和离开这个组件时执行一些方法的时候,如果这个组件被<keep-alive />包裹,就可以使用这两个钩子函数,activated在组件一被加载时调用,deactivated在一离开组件是调用。配合v-if使用可以实现组件的重载,在页面进入时设为true离开时再设为false <baidu-map v-if="mapReloa
2021-08-01 23:50:22
2597
2
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人