vue-router
RouterLink 组件代替 a 标签.
RouterView 在哪里渲染当前 url 路径对应的路由组件.
$route 变量.
细节
路由命名的一些问题
{
path: "/user/:id",
name: "user",
component: UserPage,
children: [
{
path: "profile",
name: "profile",
component: UserProfile
},
{
path: "posts",
name: "posts",
component: UserPosts
},
{
path: "",
name: "root",
component: UserRoot
}
]
}
router.push('/user/123')会渲染UserRoot组件.router.push({ name: 'user', params: { id: '123' } })不会渲染UserRoot组件.
vue-router 是基于组件的复用, 因此在 router-link 切换时,并不会触发组件的生命周期函数
命名路由的优点
命名必须唯一
- 没有硬编码
- params 自动编解码
- 避免 typo
- 绕过路径排序, 例如展示一个匹配路径相同但排序较低的路由.