Доступ к элементу и компоненту

Обработка крайних случаев

В каждом дочернем компоненте экземпляра new Vue, к этому корневому экземпляру можно получить доступ через свойство $root. Например, для этого корневого экземпляра:

// Корневой экземпляр Vue
new Vue({
  data: {
    foo: 1
  },
  computed: {
    bar: function () { /* ... */ }
  },
  methods: {
    baz: function () { /* ... */ }
  }
})

Теперь все дочерние компоненты смогут получить доступ к этому экземпляру и использовать его в качестве глобального хранилища:

// Получение данных из корневого экземпляра
this.$root.foo

// Установка данных в корневом экземпляре
this.$root.foo = 2

// Использование вычисляемых свойств корневого экземпляра
this.$root.bar

// Вызов методов корневого экземпляра
this.$root.baz()

Это может быть удобно для демонстраций или очень маленьких приложений с несколькими компонентами. Однако этот паттерн плохо масштабируется для средних или крупных приложений, поэтому мы настоятельно рекомендуем использовать Vuex для управления состоянием в большинстве случаев.

Last updated