Vue router-view прерывается, когда он пытается прочитать переменную, которой нет в этом компоненте

#vue.js #vue-router

#vue.js #vue-router

Вопрос:

Я беспокоюсь об ошибке в течение 2 дней. Я открыл проблему на Github, но они закрылись, потому что в моем проекте есть как внешний, так и внутренний сервер. Теперь проблема объясняется с помощью видео gif здесь: https://s8.gifyu.com/images/screen-recorder-sun-nov-15-2020.gif

Полное изображение ошибки: https://i.ibb.co/9h4LZ9B/Screenshot-from-2020-11-15-16-25-12.png

Когда я пытаюсь открыть страницу сведений о проблеме, маршрутизатор не работает. Ошибка, о которой говорит маршрутизатор, заключается в том, что он не может найти свойство ‘name’ на странице сведений о проблеме. Вот в чем проблема. В коде, который показывает ошибка, нет переменной ‘name’. Вот воспроизведение моего кода:

https://codesandbox.io/s/elastic-sky-rwpzn

Я устал от этой ситуации. Я буду благодарен за любую помощь. Спасибо!

Ответ №1:

problemDetails.user.name name Это то, для чего вы получаете исключение. Вероятно, ваш шаблон пытается получить визуализацию до того, как вы получите пользователя. Попробуйте добавить a v-if в этот div, и он будет отображаться только в том случае, если пользователь существует:

 <div class="problem-detail-info" v-if="problemDetails.user">
  <p>created by {{ problemDetails.user.name }}</p>
</div>
  

Комментарии:

1. Я не знаю, как вас благодарить. Я собирался сойти с ума. Спасибо, спасибо и еще раз спасибо, сэр.

2. Хе-хе, рад, что смог вам помочь 🙂