Tags → #Vue
-
考虑路由来源的 Vue 页面缓存逻辑
本文介绍了在Vue框架中实现页面缓存逻辑的两种方案。初版方案通过keep-alive和router-view结合使用,以及路由守卫来控制页面缓存,但存在逻辑复杂的问题。新方案简化了逻辑,通过构建目标页面和来源页面的关系,优化了缓存机制,使得代码更加简洁且易于理解。
-
Vue 组件的 Props 到底能不能改?
Vue 推崇单向数据流这个概念,也就是数据流向必须是从父到子。子组件想要修改数据必须 `emit` 一个事件,父组件接收到事件后,由父组件修改数据传回到子组件。 我在 stackblitz 写了个例子,使用版本为 `Vue@3.4.5`。可以看到在,`props` proxy 的外层 han...
-
写 Vue 我建议非必要别用 watch
Vue 里的 watch 很好用,但是过度依赖 watch 真的好吗?
-
Vue 优化速查
我曾以为,拆分子组件只是用于抽象,但实践告诉我,拆分子组件是提升性能的一种方式。 在我的实际工作中遇到这么个问题,有一个很大的表格,里面有多个新增条目的对话框,当数据很多的时候,填写新增数据都会变卡。 原因就是,在一个组件里,修改值会造成整个组件的数据检查和 diff。但是明知道大表单什么...
-
Vue 的异步更新机制
这篇文章主要介绍的就是 Vue 异步更新相关的原理。本篇的核心理解起来没有响应式原理难,重点就是两个字**队列**。 为什么需要异步更新? ```javascript this.a = 1; this.b = 2; this.c = 3; this.a = 5; this.a = 6; `...
-
Vue 响应式原理解析
几年来看了不少 Vue 原理的文章,在这些文章的帮助下,我也多次尝试自己理解 Vue 的源码,终于,我觉得是时候自己输出一下内容了,希望可以从不同于其他文章的角度带大家熟悉 Vue。 这个专题自然是分多个部分讲解 Vue 源码,第一篇就先讲最最经典的 Vue 响应式原理吧! 在正式讲原理之前,...
-
Vue 项目优化
下面按优化效果由高到低分享几个优化技巧,在最下面会有分类速览,也相当于一个总结。 我也曾以为,拆分子组件是用于抽象,但实践告诉我,拆分子组件是提升性能的一种方式(特定情况)。 在我的实际工作中遇到这么个问题,有一个很大的表格,里面有多个新增条目的对话框,当数据很多的时候,**在弹框中**填...
-
Vue 2 无视组件边界的表单校验解决方案
现成的校验库大多很重,修改也不容易,之前使用 vee-validate 这个库,也不知道是我写得有问题还是它本身机制问题,校验子组件的时候会牵涉到父组件渲染,导致校验看起来十分卡顿。 那何不自己造一个?这很麻烦吗?不!也就一百多行 js 的事情!本文就带你自己造!(嗯?结果这是 Vue 插件教程...