@Artemio95

Почему computed свойство при выводе в шаблон выдает ошибку?

Есть computed
sliderHeight() {
            return this.$refs.slide[this.sliderActive - 1].clientHeight
        }

Оно все прекрасно считает, в девтулзах показывает число. Но стоит мне попробовать в шаблон вывести
:style="{
                        left: sliderOffsetLeft,
                        height: sliderHeight + 'px'
                    }"

То куча ошибок в консоли и само computed - "(error during evaluation)"
В чем может быть причина?
  • Вопрос задан
  • 170 просмотров
Решения вопроса 1
0xD34F
@0xD34F Куратор тега Vue.js
Кто-то невнимательно читал документацию:

Важное замечание о времени регистрации ссылок: поскольку ссылки создаются render-функцией, вы не сможете использовать их при первичной отрисовке — на тот момент они ещё не существуют! Кроме того, объект $refs не является реактивным, поэтому не стоит пытаться использовать его в шаблонах для связывания данных.

Соответственно, попытавшись что-то прочитать из $refs, вы получаете undefined, а попытка чтения свойства у udnefined - да, заканчивается ошибкой.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

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