前言
vue3.0中使用Proxy,为什么放弃了原来vue2.0的Object.defineProperty,是因为监听、拦截的更加全面,功能更加强大,下文我就详细介绍vue3.0中是如何使用Proxy实现数据的双向绑定的
1、什么是Proxy
Proxy取其英文意思即“代理”。所谓代理,是你要取得某样东西或对其进行某些操作的中间媒介,而不是直接作用在这个对象上。
Proxy可以理解成在目标对象前架设一层拦截层,外界访问该对象都必须先通过这层拦截,因此提供一种机制可以对外界的访问进行拦截或过滤。
2、vue.js中使用双向绑定
<div id="app">
<h2>hello {
{
msg}}</h2>
<input type="text" v-model="msg" />
</div>
<script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>
<script>
let vm = new Vue({
el: '#app',
data: {
msg: '阿良',
},
})
</script>
3、手写,实现vue3.0双向绑定
这里就不一一讲解了,不懂得看注释哦
index.html
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<title>Document</title>
<script src="./index.js"></