vue3中使用路由及子路由配置

npm install vue-router@4

新增router文件夹,router下新建index.js,附上下属代码:

如A页面下有组件B,B组件中也需要有路由跳转,则直接在B组件中放入 <router-view></router-view>,然后在一级路由下添加children项路由即可,注:children中默认项path需写为空

原文地址:嵌套路由 | Vue Router

import {createRouter, createWebHashHistory, createWebHistory} from "vue-router"

// 1. 定义路由组件, 注意,这里一定要使用 文件的全名(包含文件后缀名)
import homePage from "../components/HomePage/HomePage.vue";
import admin from "../components/mainlayout/mainlayout.vue";
import Project from "../components/Project/Project.vue";
import home from '../components/Home/home.vue';


// 2. 定义路由配置
const routes = [
  { 
    path: "/",
    redirect: '/home'
  },
  { path: "/home", component: home,
   children: [
	     { path: "", component: homePage },
  	     { path: "/homePage", component: homePage },
      
         { path: "/Project", component: Project },
      ], 
  },
  { path: "/homePage", component: homePage },
  { path: "/admin", component: admin },
];

// 3. 创建路由实例
const router = createRouter({
  // 4. 采用hash 模式
  history: createWebHashHistory(),
  // 采用 history 模式
  // history: createWebHistory(),
  routes, //使用上方定义的路由配置
});

export default router 

在main.js中引入./router/index.js

import { createApp } from 'vue';
import App from './App.vue';
import Antd from 'ant-design-vue';
import 'ant-design-vue/dist/antd.css';
import * as Icons from "@ant-design/icons-vue";
import VueResouce from 'vue-resource';
import RouterIndex from './router/index';



const app = createApp(App).use(Antd);

app.use(RouterIndex);


app.mount("#app");

// app.use(VueResouce);



// const icons : any = Icons
// for (const i in icons) {
//   app.component(i, icons[i])
// }

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Vue 3使用路由需要进行一些变化。首先,你需要导入路由API,可以通过以下方式导入: ```javascript import { useRouter } from 'vue-router' ``` 然后,你需要在组件使用`useRouter`函数来获取路由实例,例如: ```javascript const router = useRouter() ``` 接下来,你可以使用`router`对象来进行路由操作,比如跳转到其他路由: ```javascript router.push('/other-route') ``` 在Vue 3路由的目录结构和Vue 2一样,通常将路由相关的文件放在`src/router`目录下。其,`index.ts`是路由的入口文件,`routes.ts`是路由配置文件,可以将路由配置拆分成多个模块文件进行管理。另外,`main.ts`是项目的入口文件。\[1\]\[2\] 需要注意的是,在Vue 3,无法直接在组件使用`this.$route`来获取当前路由信息。你可以通过`router.currentRoute`来获取当前路由的信息,例如: ```javascript const currentRoute = router.currentRoute.value ``` 然后,你可以通过`currentRoute`对象来获取路由的相关信息,比如路径、参数等。\[3\] #### 引用[.reference_title] - *1* *2* *3* [vue3 路由使用](https://blog.csdn.net/m0_49515138/article/details/128870058)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^koosearch_v1,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值