🎩vue核心原理---vue三要素之响应式

vue三要素

  • 响应式:vue 如何监听到 data 的每个属性变化?
  • 模板引擎:vue 的模板如何被解析,指令如何处理?
  • 渲染:vue 的模板如何被渲染成 html ?以及渲染过程

响应式:vue 如何监听到 data 的每个属性变化?

什么是响应式

  • 修改 data 属性之后,vue 立刻监听到
  • data属性代理绑定到vm上
var vm = new Vue({
    el: '#app',
    data: {
        name: 'zhangsan',
        age: 20 
    }
})
var vm = {}
var data = {
   name: 'zhangsan',
   age: 20
}
var key, value
for (key in data) {
    (function (key) {
        Object.defineProperty(vm, key, {
            get: function () {
                console.log('get', data[key]) // 监听
                return data[key]
            },
            set: function (newVal) {
                console.log('set', newVal) // 监听
                data[key] = newVal
            }
        })
    })(key)
}

浏览器兼容

image.png

2、模板引擎:vue 的模板如何被解析,指令如何处理?

3、渲染:vue 的模板如何被渲染成 html ?以及渲染过程


                                🤠你的鼓励对我很重要,会激励我写出更加优秀的文章🤠
image.png
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 这篇笔记主要包含 Vue 2 不同于 Vue 1 或者特有的内容,还有我对于 Vue 1.0 印象不深的内容。关于...
    云之外阅读 5,082评论 0 29
  • # 传智播客vue 学习## 1. 什么是 Vue.js* Vue 开发手机 APP 需要借助于 Weex* Vu...
    再见天才阅读 3,629评论 0 6
  • 1.安装 可以简单地在页面引入Vue.js作为独立版本,Vue即被注册为全局变量,可以在页面使用了。 如果希望搭建...
    Awey阅读 11,108评论 4 129
  • 这是我第一次在《简书》写文章,之前一直在CSDN,但是最近CSDN一直服务器崩溃,有些苦恼哦~ 之前一直手机上接收...
    正规程序员阅读 563评论 0 49