02 2023 档案
摘要:Computed 和 Methods 的区别 可以将同一函数定义为一个 method 或者一个计算属性。对于最终的结果,两种方式是相同的 不同点: computed: 计算属性是基于它们的依赖进行缓存的,只有在它的相关依赖发生改变时才会重新求值; method 调用总会执行该函数。 如何定义动态路由
阅读全文
摘要:虚拟 DOM 的优缺点? 优点: 保证性能下限: 框架的虚拟 DOM 需要适配任何上层 API 可能产生的操作,它的一些 DOM 操作的实现必须是普适的,所以它的性能并不是最优的;但是比起粗暴的 DOM 操作性能要好很多,因此框架的虚拟 DOM 至少可以保证在你不需要手动优化的情况下,依然可以提供还
阅读全文
摘要:[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-0NEJeurD-1677552905427)(https://p1-juejin.byteimg.com/tos-cn-i-k3u1fbpfcp/bf111c39bc8742218da6ffaf54a81f70~tplv
阅读全文
摘要:函数式组件优势和原理 函数组件的特点 函数式组件需要在声明组件是指定 functional:true 不需要实例化,所以没有this,this通过render函数的第二个参数context来代替 没有生命周期钩子函数,不能使用计算属性,watch 不能通过$emit 对外暴露事件,调用事件只能通过c
阅读全文
摘要:我们先来关注一下$mount是实现什么功能的吧: 我们打开源码路径core/instance/init.js: export function initMixin (Vue: Class<Component>) { ...... initLifecycle(vm) // 事件监听初始化 initEv
阅读全文
摘要:虚拟DOM真的比真实DOM性能好吗 首次渲染大量DOM时,由于多了一层虚拟DOM的计算,会比innerHTML插入慢。 正如它能保证性能下限,在真实DOM操作的时候进行针对性的优化时,还是更快的。 MVVM的优缺点? 优点: 分离视图(View)和模型(Model),降低代码耦合,提⾼视图或者逻辑的
阅读全文
摘要:先来看生成虚拟dom的入口文件: ... import { parse } from './parser/index' import { optimize } from './optimizer' import { generate } from './codegen/index' ... cons
阅读全文
摘要:怎样理解 Vue 的单向数据流 数据总是从父组件传到子组件,子组件没有权利修改父组件传过来的数据,只能请求父组件对原始数据进行修改。这样会 防止从子组件意外改变父级组件的状态 ,从而导致你的应用的数据流向难以理解 注意 :在子组件直接用 v-model 绑定父组件传过来的 prop 这样是不规范的写
阅读全文
摘要:这一章我们开始讲模板解析编译:总结来说就是通过compile函数把tamplate解析成render Function形式的字符串compiler/index.js import { parse } from './parser/index' import { optimize } from './
阅读全文