vue学习总结:响应式系统&vue实例

本文详细介绍了Vue的核心——响应式系统,包括数据绑定原理、数据观测与getter/setter,以及如何创建Vue实例。讨论了data、methods、computed、template等选项的使用,并概述了Vue实例的生命周期和相关钩子函数,帮助理解Vue的工作机制。
摘要由CSDN通过智能技术生成

响应式系统

vue是一个帮助用户构建界面的前端框架,它的核心是一个响应式的数据绑定系统,通过数据来驱动页面显示的更新,而不是像jquery那样通过操作DOM来改变页面的显示。

这里写图片描述

vue通过ViewModal来实现数据和DOM的双向数据绑定。这是如何实现的呢?
当我们把一个普通的js对象传给Vue实例的data选项后,Vue将遍历这个对象所有的属性,并使用Object.defineProperty 把这些属性全部转为 getter/setter。

每个组件实例都有相应的watcher实例对象,他会在组件渲染的过程中把属性记录为依赖,当依赖项的setter被调用时,会通知watcher重新计算,从而使它关联的组件得以更新。

这里写图片描述

由于Vue不能检测对象属性的添加或删除。 由于Vue 会在初始化实例时对属性执行 getter/setter 转化过程,所以属性必须在 data 对象上存在才能让 Vue 转换它,这样才能让它是响应的。
因此要在初始化实例前声明响应式属性,哪怕只是一个空值:

var vm = new Vue({
  data: {
    // 声明 message 为一个空值字符串
    message: 
  • 3
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值