Код
в файле vue выглядит следующим образом:
<template>
<div>
{{testvar}}
</div>
<div>
{{testvar2}}
</div>
</template>
<script>
epxport default {
data() {
return {
testvar: "testvar",
testvar2: "testvar2"
}
},
mounted() {
this.testvar = "newvalue"
console.log(this)
console.log(this.$data)
}
}
</script>
, когда я консоль журнала this.$data
, а затем проверить результат, массив sub's
в Observer.dep
пуст.
Как я знаю, когда значение testvar's
изменится, оно вызовет его reactiveSetter
, реактивный установщик вызовет метод dep's
notify
, затем метод notify
перебирает массив sub's
, где все watchers
есть, и вызвать наблюдателей update
метод.этот update
метод отвечает за обновление представления.Если мое приведенное выше утверждение верно, почему массив sub пуст?Если я ошибаюсь, не могли бы вы дать хорошее объяснение?Заранее спасибо