【问题标题】:Vue 3 router in history mode reloads pages历史模式下的 Vue 3 路由器重新加载页面
【发布时间】:2021-06-16 23:36:26
【问题描述】:

我正在使用历史模式

router.js

const routes = [
    {
      path: '/',
      name: 'Promo',
      component: Promo,
    },
    {
      path: '/reviews',
      name: 'Reviews',
      component: Reviews,
    },
    ...
];

const router = createRouter({
    history: createWebHistory(),
    routes,
})

.htaccess

<IfModule mod_rewrite.c>
  RewriteEngine On
  RewriteBase /
  RewriteRule ^index\.html$ - [L]
  RewriteCond %{REQUEST_FILENAME} !-f
  RewriteCond %{REQUEST_FILENAME} !-d
  RewriteRule . /index.html [L]
</IfModule>

并且到 / 的 router-link 可以在过渡且无需重新加载的情况下正常工作,但是当 router-link 重定向到(例如)/reviews 时,vue 路由器会重新加载页面

我的错误在哪里?

【问题讨论】:

  • 在重定向时显示代码。
  • {{ get(' menuReviews') }}

标签: vue.js vue-router vuejs3


【解决方案1】:

我遇到了同样的问题。试试这个方法:

<router-link
  custom
  class="menu-item link hover--big"
  :to="{ name: 'Reviews'}"
  v-slot="{ isActive, navigate }"
  @click="menuShowed = false">
  <div
    v-bind="$attrs"
    :class="isActive ? activeClass : inactiveClass"
    @click="navigate">
    {{ get('menuReviews') }}
  </div>
</router-link>

【讨论】:

    猜你喜欢
    • 2023-03-20
    • 2020-02-14
    • 2020-08-14
    • 2018-04-08
    • 2019-05-17
    • 2018-10-02
    • 2021-09-27
    • 2018-07-29
    • 2018-02-16
    相关资源
    最近更新 更多