122
社区成员
发帖
与我相关
我的任务
分享| 这个作业属于哪个课程 | 2302软件工程 |
|---|---|
| 这个作业要求在哪里 | 软件工程实践总结&个人技术博客 |
| 这个作业的目标 | 课程回顾与总结、个人技术总结 |
| 其他参考文献 | 构建之法&CSDN |
npm i vue-router -S
将 vue-router 挂载到 Vue 实例上:
在 main.js 中
import VueRouter from 'vue-router'
Vue.use(VueRouter);
// 引入组件
import RouterDemo from "../components/RouterDemo";
// 配置路径与组件的映射
const routes = [
{
path: "/",
redirect: "/bar",
},
{
path: "/bar",
component: RouterDemo,
name: "2",
},
{
path: "/user",
component: RouterDemo,
name: "3",
children: [
{
path: "profile",
component: RouterChildrenDemo,
},
],
}
];
export default routes;
import routes from './router'
const router = new VueRouter({
// mode: history,
routes,
})
new Vue({
router,// 将 vue-router 实例挂载到 Vue 实例上
render: h => h(App),
}).$mount('#app')
// RouterDemo.vue
<template>
<div>
<router-link to="/user/profile">Go to /user/profile</router-link>
<router-view></router-view>
</div>
</template>
<script>
export default {
};
</script>
const routes = [
{
path: "/",
redirect: "/user"
},
{
path: "/user",
/* 使用 rander 函数直接渲染一个 router-view 组件 */
component: {render:h => h('router-view')},
/* 等价于下面这种写法:
component: {render(h) {
return h('router-view')
}}, */
children:[
{
path: "/user",
redirect: "/user/login"
},
{
path: "login",
name: "Login",
component: () =>
import(/* webpackChunkName: "user" */ "../views/user/Login")
},
{
path: "register",
name: "Register",
component: () =>
import(/* webpackChunkName: "user" */ "../views/user/Register.vue")
}
]
},
]
问题:在动态路由中获取参数时出现问题,导致无法正确使用参数
解决过程:使用 $route.params 来获取动态路由参数,确保参数名与路由配置中的一致。
// UserDetail.vue
export default {
created() {
const userId = this.$route.params.userId;
// 使用 userId 来加载用户详情数据等操作
}
}
