当前位置: 首页 > article >正文

Vue框架学习笔记——数据代理

文章目录

  • 前文提要
  • 数据代理的概念
  • MVVM模型和Vue中的数据代理
    • M,模型
    • V,视图
    • VM,视图模型


前文提要

本人仅做个人学习记录,如有错误,请多包涵


数据代理的概念

使用一个对象代理对另一个对象中属性的操作。

MVVM模型和Vue中的数据代理

Vue框架是建立在MVVM的基础上开发的。
MVVM框架模型了解:什么是MVVM框架?
第一个M代表Model,模型,也就是数据
第一个V代表View,视图,也就是呈现出来的效果
最后的VM代表ViewModel,是视图模型,是抽离出来的部分逻辑代码,用于构建视图和模型之间的关联,能够借此管理两部分。

M,模型

Vue中的Model也就是Vue实例中的data中的数据,也就是下文data后大括号中的内容

const vm = new Vue({
      // el: '#box',
      data: {
        name: "这里是name的值",
      }
})

V,视图

Vue中的View视图,则是html中嵌入了Vue框架特殊语法待处理的模版代码,

<div class="box" id="box">
    <h1>
      hello,world{{name}}
    </h1>
  </div>

例如这里的,div标签,就是我理解中的Vue里的视图,

VM,视图模型

至于VM,视图模型,则是整个Vue实例。

通过这种关系,也就是通过这种数据代理的方法,将html中的数据和Vue实例中的data数据关联起来。

在第一个M中的代码用vm指向整个Vue实例,代码中的data会在vm上生成一个属性_data,_data不是Vue实例中的data,但是实例中的data的数据,_data中都有。

接着就是一串代码

<div class="box" id="box">
    <h1>
      hello,world{{name}}
    </h1>
  </div>

在这两层大括号中,我们可以直接写js表达式也可以写出Vue实例中含有的各类属性
那么Vue实例中有name吗,按照上面的讲述,是不是应该写成

hello,world{{_data.name}}

才对,写成_data.name这样没错,但其中Vue中数据代理的体现还体现在,它自动地在vm的身上创建了data中的属性
你对data的访问和修改,实际上操控的都是_data中的数据(这里就是数据代理的体现,用一个对象代理另一个对象的操作),_data和data中的数据又是关联的。
就可以通过name实现_data.name的操作,目的是编写代码更加方便


至此,结束。

如果你觉得这篇文章写的不错,多多点赞~收藏吧!


http://www.kler.cn/a/146025.html

相关文章:

  • 20250119面试鸭特训营第27天
  • 云计算与物联网技术的融合应用(在工业、农业、家居、医疗、环境、城市等整理较全)
  • 【PowerQuery专栏】PowerQuery提取XML数据
  • 二进制/源码编译安装mysql 8.0
  • 迅为瑞芯微RK3562开发板/核心板应用于人脸跟踪、身体跟踪、视频监控、自动语音识别(ASR)、图像分类驾驶员辅助系统(ADAS)...
  • Docker安装PostGreSQL docker安装PostGreSQL 完整详细教程
  • 高精度/单精度
  • Couchdb 权限绕过漏洞复现(CVE-2017-12635)
  • kafka,RabbitMQ,RocketMQ,他们之间的区别,架构,如何保证消息的不丢失,保证不重复消费,保证消息的有序性
  • 基于PLC的果园灌溉系统设计(论文+源码)
  • R语言数据缩放-1到1
  • 免费分享一套基于springboot的餐饮美食分享平台系统,挺漂亮的
  • 【数据中台】开源项目(2)-Dbus数据总线
  • 只考数据结构,计算机评级C+,成都信息工程大学考情分析
  • 【GD32307E-START】RT-Thread移植测试
  • Debian 11.3 ARM64 安装中文语言包
  • 【开源】基于Vue和SpringBoot的个人健康管理系统
  • 【计算机网络笔记】多路访问控制(MAC)协议——轮转访问MAC协议
  • 056-第三代软件开发-软件打包
  • 正则表达式例题-PTA
  • [Docker]十.Docker Swarm讲解
  • linux磁盘清理
  • jenkins流水线(pipline)实例
  • 夜神模拟器 burp抓包 ADB 微信小程序
  • 数组栈的实现
  • html实现我的故乡,城市介绍网站(附源码)