Vue3中使用vue-router
- cnpm i vue-router@next -D
- 创建Router对象和路由配置 —— routerIndex.js
主要区别:就是改成了引入工厂函数createRouter的方式,而不是直接使用插件!
java
import {createRouter, createWebHashHistory, createWebHistory} from "vue-router"
// 1. 定义路由组件, 注意,这里一定要使用 文件的全名(包含文件后缀名)
import countIndex from "../pages/count/countIndex.vue";
import langshanIndex from "../pages/langshan/langshanIndex.vue";
// 2. 定义路由配置
const routes = [
{
path: "/",
redirect: '/countIndex'
},
{ path: "/countIndex", component: countIndex },
{ path: "/langshanIndex", component: langshanIndex },
];
// 3. 创建路由实例
const router = createRouter({
// 4. 采用hash 模式
history: createWebHashHistory(),
// 采用 history 模式
// history: createWebHistory(),
routes, //使用上方定义的路由配置
});
export default router
//导出router
- Router 当做插件引用进来——main.js
java
import { createApp } from 'vue'
import routerIndex from './router/routerIndex' // 引入路由对象实例
import App from './App.vue'
const app = createApp(App)
// 使用配置的路由
app.use(routerIndex)
app.mount('#app')
4.在组件中使用编程式导航
js
import { useRouter } from "vue-router";
const router = useRouter(); //即可获取router对象,其余一样