Компонент монтируется дважды при обновлении с дочернего маршрута в режиме истории

Я использую vue-router в режиме истории. Когда я нахожусь на дочернем маршруте "/ приборной панели" и я обновляю страницу, <ccp/> компонент монтируется дважды. В компоненте ccp я вхожу в консоль в созданном и смонтированном хуке. Я вижу, что вывод на консоль дважды для каждого. Какие-нибудь мысли? Заранее спасибо за поиск!

Изменить: при начальной загрузке приложения, <ccp/> создается и монтируется только один раз.

Вот код:

App.vue:

<template>
    <div v-show="isConnected">
      <ccp/>
      <router-view/>
    </div>
</template>

<script>
     // blah blah blah - doing stuff and then pushing route to /dashboard
    return this.$router.push({name: "dashboard"});
</script>

router.js

export default new Router({
mode: "history",
routes: [
// DEFAULT ROUTE
{
  path: "/",
  name: "root",
  alias: store.getters.isDemoMode ? "/demo" : "/app" // isDemoMode is false for this test however I wanted to show the alias config in case that is part of the problem.
},

{
  path: "/demo",
  name: "demo",
  component: Demo
},
{
  path: "/app",
  name: "app",
  component: App,
  children: [
    {
      path: "/dashboard",
      name: "dashboard",
      component: Dashboard
    }
  ]
 }
})

1 ответ

Решение

Вероятность его монтирования в два раза выше, поскольку компонент App также является частью вашего маршрута. Ваш маршрут назван "app" снова устанавливает приложение.

Другие вопросы по тегам