реквизит от отца компонент не определен в дочернем, хотя он работает правильно

1

Поэтому я передаю данные от компонента-потомка к ребенку, а у ребенка - это отображение. Все работает нормально, но когда я иду в консоль, я обнаружил, что у меня проблема, но код работает нормально, а отображаемые данные - то, что я ожидал.

Отец:

<article-header :article="articles"></article-header>

эта строка находится в тегах <template>. Переменная статьи - это значение, собранное в HTTP-запросе API-интерфейса.

В дочернем компоненте, который является <article-header> я использую эти данные следующим образом:

<template>
<p>{{ article[0].title }}</p>
</template>
<script>

    export default {
        props:['article']
    }

</script>

И он отлично работает, он показывает мне мой заголовок из базы данных exacly, как я хочу, но он также дает ошибку в консоли браузера:

[Vue warn]: Ошибка в рендере: "TypeError: Невозможно прочитать свойство" title "undefined"

найдено в ---> at src\components\no_related\article\elements\articleHeader.vue at src\components\no_related\article\article.vue at src\App.vue

Кто-нибудь знает, что может вызвать такое поведение?

Теги:
vue.js
vuejs2

1 ответ

2
Лучший ответ

Vue передает ваш компонент до завершения вашего HTTP-запроса на бэкэнд, т.е. Ваша статья все еще не определена. Это то, что вызывает запись в консоли.

Как только ваш HTTP-запрос завершен, Vue обновляет компонент с уже существующими данными. Это то, что вы видите в браузере.

  • 0
    Что я могу сделать, чтобы это исправить? Я имею в виду, что это работает, но я также не хочу иметь никаких ошибок в моей консоли. Можно ли как-то задержать чтение реквизита в дочернем компоненте? Или, может быть, я должен просто сделать http запрос внутри ребенка? Во-вторых, я чувствую себя глупо, потому что мне нужно сделать одинаковую просьбу у обоих детей.
  • 0
    Пожалуйста, предоставьте реальное решение этого поведения, потому что сейчас вы только объяснили, почему это происходит. Тогда я приму этот ответ.
Показать ещё 3 комментария

Ещё вопросы

Сообщество Overcoder
Наверх
Меню