美文网首页
那首先谈谈你对Vue的理解吧?

那首先谈谈你对Vue的理解吧?

作者: 懒懒猫 | 来源:发表于2022-08-10 11:11 被阅读0次

    vue.js是用于构建用户界面的渐进式JavaScript 的单页面应用框架,
    特点:

    • 易学易用,性能出色,适用场景丰富的 Web 前端框架。
    • 无需构建步骤,渐进式增强静态的 HTML
    • Vue 的设计非常注重灵活性和“可以被逐步集成
    • 可以轻松引入 Vue 插件或其他的第三方库进行开发

    核心特点:

    虚拟DOM:
    运行的js速度是很快的,大量的操作DOM就会很慢,时常在更新数据后会重新渲染页面,这样造成在没有改变数据的地方也重新渲染了DOM节点,这样就造成了很大程度上的资源浪费。
    利用在内存中生成与真实DOM与之对应的数据结构,这个在内存中生成的结构称之为虚拟DOM,当数据发生变化时,能够智能地计算出重新渲染组件的最小代价并应用到DOM操作上

    diff算法:比较新旧节点,一边比较一边给真实的DOM打补丁,最终只把变化的部分重新渲染,提高了渲染效率的过程。
    当数据发生改变时,set方法会让调用Dep.notify通知所有订阅者Watcher,订阅者就会调用patch给真实的DOM打补丁,更新相应的视图。

    响应式:vue是响应式的,我们通过Object.defineProperty为对象obj添加属性,可以设置对象属性的gettersetter函数。之后我们每次通过点语法获取属性都会执行这里的getter函数,在这个函数中我们会把调用此属性的依赖收集到一个集合中 ;而在我们给属性赋值(修改属性)时,会触发这里定义的setter函数,在次函数中会去通知集合中的依赖更新,做到数据变更驱动视图变更。

    双向数据绑定:提供了实现数据双向绑定的手段,我们可以通过v-model的语法糖来实现`

    MVVM:Model-View-ViewModel
    Model 表示数据模型层。 view 表示视图层, ViewModel 是 View 和 Model 层的桥梁,数据绑定到 viewModel 层并自动渲染到页面中,视图变化通知 viewModel 层更新数据

    相关文章

      网友评论

          本文标题:那首先谈谈你对Vue的理解吧?

          本文链接:https://www.haomeiwen.com/subject/biwnwrtx.html