@thisuser

Почему в компоненте не везде выводит значение $root?

Слегка знакомлюсь с Vue и заметил странное поведение.

Есть:

new Vue({
    el: '#app',
    created: function(){
      this.getCategories();
    },
    data:{
      content: 'что-то',
...
...


и отдельно компонент:

var VueModal = Vue.extend ({
  template: `<div v-if="$root.modalContent">
                <div>
                  <input type="text" value="{{$root.content}}">
                </div>
                {{$root.content}}
              </div>
...
...


В итоге на выходе получается так:

<div>
	<div>
	  <input type="text" value="{{$root.content}}">
	</div>
	что-то
</div>


Почему в value значение не рендерится, а ниже всё ок?
  • Вопрос задан
  • 138 просмотров
Решения вопроса 1
0xD34F
@0xD34F Куратор тега Vue.js
Во-первых, интерполяция с атрибутами не работает, привязка значений осуществляется иначе.

Во-вторых - трогать $root НЕ НАДО. Хотите использовать внешнее значение - передавайте его в компонент как параметр или доставайте из хранилища.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы