首先,让我们先新建个vue(2.5.2)的实例。代码如下。
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Document</title>
<script src="./vue.js"></script>
</head>
<body>
<div id="app">
<button @click="fetchData">
fetchData
</button>
{{product}}
</div>
<script>
var vm = new Vue({
el:"#app",
data:{
product:"none"
},
methods:{
fetchData(){
this.product = "some products!"
}
}
})
</script>
</body>
</html>
复制代码
然后,这是生成的vue的实例如下图。
接下来 让我们分析一下这个 _data
首先,找到它首次出现的地方。 让我们来到代码的第4465行,如下图
proxy(vm,"_data",key)
这里。就是对
_data 做一些‘py’操作了。我们到那一行,然后跟进去,看看里面有什么。