Как Деп работает в VU реактивности? - PullRequest
0 голосов
/ 01 февраля 2019
Код

в файле 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 пуст?Если я ошибаюсь, не могли бы вы дать хорошее объяснение?Заранее спасибо

enter image description here

...