vue 中的数据代理
目的:通过 vm 对象来代理 data 对象中的属性操作(读/写)
好处:更加方便的操作 data 中数据,让编码更方便
<!-- 有数据代理 -->
<h2>姓名:{{name}}</h2>
<h2>性别:{{sex}}</h2>
<!-- 如果 Vue 没有数据代理 -->
<h2>姓名:{{_data.name}}</h2>
<h2>性别:{{_data.sex}}</h2>
原理:
通过 Object.dedineProperty()
把 data 对象的所有属性添加到 vm 上
为每一个添加到 vm 的属性,都指定一个 getter/setter
在 getter/setter 中操作 data 中对应的属性
实例
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Vue中的数据代理</title>
<script type="text/javascript" src="js/vue.js"></script>
</head>
<body>
<div id="root">
<h2>姓名:{{name}}</h2>
<h2>性别:{{sex}}</h2>
</div>
<script type="text/javascript">
new Vue({
el: '#root',
data() {
return {
name: '张三',
sex: '男'
}
}
})
</script>
</body>
</html>
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?