1

这是我的主页:

在此处输入图像描述

这是我的博客页面:

在此处输入图像描述

我正在使用 vue3,代码失败了:

import { createRouter, createWebHashHistory } from 'vue-router';
import Home from '../views/Home.vue';
import Blogs from '../views/Blogs.vue';


const routes = [
    { path: '/', component: Home},
    { path: '/home', name: 'Home', component: Home },
    { path: '/blogs', name: 'Blogs', component: Blogs },

];

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

export default router;

所以,如果链接是'http://localhost:3000/blogs/',它应该是我的博客页面,但结果却是主页。

在此处输入图像描述

该链接必须是“http://localhost:3000/#/blogs”,因此它可以路由到博客页面。

在此处输入图像描述

我不明白为什么我必须在实际路径之前写一个'/#/'!

4

2 回答 2

3

你应该createWebHistory改用createWebHashHistory. 更多细节在这里

于 2021-08-30T07:41:07.797 回答
2

您将不得不使用 '/#/' 因为您正在使用createWebHashHistory(),如果没有使用的具体原因createWebHashHistory(),您应该使用createWebHistory()它,因为它是推荐的方式。

更多信息: https ://next.router.vuejs.org/guide/essentials/history-mode.html

于 2021-08-30T07:44:03.027 回答