Я пытаюсь использовать вложенную маршрутизацию в моем приложении Vue.js. У меня работает маршрутизация, однако я не могу понять, как передавать данные с родительского маршрута до детского маршрута.Как вы можете передавать данные из родительского маршрута в дочерний маршрут в вложенных маршрутах Vue.js?
В принципе, родительский маршрут собирает объект, имеющий свойства. Для каждого конкретного вложенного дочернего маршрута я хочу показать одно из свойств этого объекта.
Например, если у меня есть объект ниже:
myDataObject : {name : "Foo" , profile : "Profile Data", posts : "Posts Data" }
Я хотел бы передать «Профиль» переменную дочернего маршрута «/ пользователь /: идентификатор/профиль». В случае с «/ user /: id/posts» я хотел бы передать переменную «post» в.
Я думал, что смогу выполнить это с помощью реквизита, но я не могу найти пример, который подходит для маршрутизации и что я пытался, похоже, не работает.
Вот ссылка на jsfiddle того, что я пытаюсь сделать.
http://jsfiddle.net/90q4sucj/2/
Спасибо, Стивен. Я думаю, я понимаю, что вы отвечаете, однако, можете ли вы прояснить некоторые вещи? Неправильно ли я полагаю, что данные должны передаваться от родителя к ребенку? Вместо этого служба должна обрабатывать данные, а затем получать их на вложенные маршруты? – Dave
Передача его от родителя к ребенку имеет смысл, когда вы не переходите к ребенку. Если дочерний элемент используется для составления родительского элемента, то вы передадите свойства. В этом случае родительскому компоненту User не нужен компонент UserProfile для выполнения своей работы. – Stephen
Кроме того, вы можете сделать интеллектуальную программу UserService для ограничения вызовов API. Возможно, когда родительский Пользователь запрашивает у Пользователя, что вы храните его на Карте, чтобы он был доступен локально. Конечно, это потребует истечения срока действия кеша за определенное количество времени, так что у вас нет устаревших данных. – Stephen