Я хочу переключить содержимое выхода верхнего уровня набора вложенных маршрутов.
Я строю многоязычный SPA с Vue и Laravel, чтобы представить информацию о вредителях сельскохозяйственных культур производителям.Щелчок по ссылке на домашней странице заполняет новый (вложенный) вид списком вредных организмов;щелчок по любому данному вредному организму заменяет это представление на информационное листок о вредном организме.
Все эти страницы рассматриваются как дочерние по отношению к домашней странице - и это источник моей проблемы.Хотя я могу отключить домашний контент, когда отображаются дочерние представления, я не знаю, как включить его при возврате на домашнюю страницу.
Компонент моей домашней страницы:
<template>
<div>
<div class='home' v-if="bShowHome">... home page content...</div>
<router-view @data="onData">... child routes/pages ...</router-view>
</div>
</template>
<script>
export default {
name: "home",
data() {
return {
bShowHome: true
}
},
methods: {
onData(data){
this.bShowHome=data;
}
}
};
</script>
Я "отключаю" содержимое домашней страницы при переходе к дочерним маршрутам с помощью метода $ emit, когда смонтировано это представление.
Как мне / какой подход следует использовать, чтобы снова включить содержимое домашней страницы при последующем нажатии на ссылку "домашняя страница"?