- 博客(8)
- 收藏
- 关注
原创 大屏自适应方案
本文介绍了一种基于CSS transform scale的大屏自适应方案,通过两层容器设计实现固定尺寸内容在不同屏幕上的完美适配。该方案具有开发简单、性能良好、兼容性强等优点,只需按照设计稿尺寸开发,无需单位换算。核心实现原理是比较屏幕和设计稿的宽高比,选择合适基准进行缩放,并利用Vue的响应式特性自动更新样式。相比rem和vw/vh方案,该方案能更好兼容第三方库,维护成本更低,特别适合数据可视化等大屏项目。
2025-11-02 12:34:29
860
原创 权限分离方案(vue3+pinia)
否则继续验证是否存在token,若无则跳转至登录页面,若有则进一步判断是否已获取动态路由列表,若未获取则调用相应方法进行获取。利用pinia工具将其存入本地:此步骤是为了之后便于判断是否已经登录了该网站,如果不存在token,之后可以用前置路由守卫重新定位到登录页面。静态路由存在安全隐患。例如,当超级管理员授予用户VIP权限时,静态路由无法自动提供VIP页面访问权限,必须通过修改代码实现。首先要确认项目白名单,即无需登录也可以访问的页面,我的项目有login、403、404页面。目的:用来动态配置路由。
2025-10-28 10:27:43
679
原创 超级生气暴怒!vue的响应式原理还搞不懂?从简单代码带你分析,深入理解响应式原理
本文通过代码示例详细解析了Vue响应式原理的实现过程。首先构建基础数据渲染功能,然后引入Object.defineProperty实现数据监听,通过get/set方法追踪数据访问和修改。为了解决依赖收集问题,文章设计了全局函数存储和自动运行机制,最终实现了一个简化版的响应式系统。整个过程包括:数据监听、依赖收集、自动触发更新等核心环节,完整呈现了从零构建响应式框架的技术路径。
2025-08-19 18:49:36
1766
原创 超级激动狂喜!为什么vue3采用proxy代替object.defineProperty?从代码层面分析
本文对比了Vue2的Object.defineProperty和Vue3的Proxy两种数据监听机制。Object.defineProperty需要递归遍历对象每个属性进行监听,效率较低且无法检测新增/删除属性;而Proxy直接监听整个对象,按需递归性能更优,并能完整追踪属性变化。通过代码示例展示了两种实现方式,说明Proxy在性能和功能上的优势,这也是Vue3选择它的关键原因。文章最后指出Proxy通过延迟递归和全对象监听,解决了Object.defineProperty的主要缺陷。
2025-08-18 22:34:37
696
原创 怎么手写一个防抖函数(理解防抖函数代码)
防抖函数是一种延迟执行的技术,通过定时器控制函数调用,在频繁触发时只执行最后一次操作。本文详细讲解了防抖函数的实现过程:1)通过返回新函数避免立即执行;2)使用闭包保存定时器变量;3)解决this指向问题(使用apply方法);4)处理参数传递(使用...args)。最终实现了一个完整的防抖函数,适用于输入框、按钮提交等需要限制频繁触发的场景,能有效减少性能消耗。文章从基础概念到完整实现逐步解析,帮助开发者深入理解防抖机制。
2025-08-16 22:41:22
1461
原创 闭包的概念及其应用(帮助理解面试题)
本文总结了JavaScript中闭包的概念及其应用。闭包是指函数及其所在的词法环境,能够保留变量的状态不被销毁。通过示例对比闭包函数和普通函数的区别,说明闭包中变量可以持续存在。文中还介绍了闭包在项目中的实际应用,如防抖函数(debounce)和节流函数(throttle)的实现原理,这些高阶函数通过闭包特性来维护内部状态。文章帮助读者深入理解闭包这一重要概念及其在开发中的实用价值。
2025-08-08 23:08:23
191
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅