Vue 2.0源码分析-数据驱动

Vue.js 一个核心思想是数据驱动。所谓数据驱动,是指视图是由数据驱动生成的,我们对视图的修改,不会直接操作 DOM,而是通过修改数据。它相比我们传统的前端开发,如使用 jQuery 等前端库直接修改 DOM,大大简化了代码量。特别是当交互复杂的时候,只关心数据的修改会让代码的逻辑变的非常清晰,因为 DOM 变成了数据的映射,我们所有的逻辑都是对数据的修改,而不用碰触 DOM,这样的代码非常利于维护。

在 Vue.js 中我们可以采用简洁的模板语法来声明式的将数据渲染为 DOM:

html 复制代码
<div id="app">
    {{ message }}
</div>
javascript 复制代码
var app = new Vue({
    el: '#app',
    data: {
        message: 'Hello Vue!'
    }
})

最终它会在页面上渲染出 Hello Vue。接下来,我们会从源码角度来分析 Vue 是如何实现的,分析过程会以主线代码为主,重要的分支逻辑会放在之后单独分析。数据驱动还有一部分是数据更新驱动视图变化,这一块内容我们也会在之后的章节分析,这一章我们的目标是弄清楚模板和数据如何渲染成最终的 DOM。

相关推荐
杨杰39813 小时前
我给嵌入式设备写了个 6MB 的 JavaScript 运行时(xuan)
javascript
只睡四小时14 小时前
AI 生成 PPTX:11 页课件编译出 429 个形状
javascript·python·pptx·ai生成ppt·ooxml
shmily麻瓜小菜鸡14 小时前
Axios 中 params 与 data 的区别与原理
javascript·typescript
isha15 小时前
Univer拆解——从类与方法的视角分析
前端·javascript
变与不变80615 小时前
GET请求知识详解
前端·javascript
哎哟喂呢哈17 小时前
VedioJS 10
javascript·html5
夏幻灵1 天前
JavaScript this 面试:五种绑定规则、优先级与常见面试陷阱
开发语言·javascript·面试
三天不学习1 天前
Egg.js 4 突然爆火,原因是否归结于AI 原生落地需求爆发?
前端·javascript·全栈·egg.js
xcs194051 天前
前端 vue 的前端页面debugger 进不去
前端·javascript·vue.js
小宋10211 天前
A2UI从零实战:Agent安全生成交互界面与事件回传
javascript·人工智能·安全·交互