<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<script src="https://cdn.staticfile.org/vue-router/2.7.0/vue-router.min.js"></script>
<script src="https://unpkg.com/vue-router@4"></script>
<title>router_link</title>
</head>
<body>
<div id="app">
<h1>路由</h1>
<!-- 用router-link 组件进行导航 -->
<!-- 通过传递 to 来指定连接 -->
<!-- router-link 将呈现一个带有正确 href 属性的 a 标签 -->
<router-link to="/home">Go to Home</router-link>
<router-link to="/about">Go to About</router-link>
<!-- 路由出口 -->
<!-- 路由匹配到的组件将渲染在这里 -->
<router-view></router-view>
</div>
<!-- 注意我们没有常规的 a 标签,而是使用一个自定义组件 router-link 来创建连接。
这使得 Vue Router 可以在不重新加载页面的情况下更改 URL.处理URL的生成以及编码。
我们将在后面看到如何从这些功能中获益。
-->
<script>
// 1.定义路由组件
const Home = {
template: "<p>路由组件Home</p>"
}
const About = {
template: "<p>路由组件About</p>"
}
// 2.定义路由
// 每个路由到需要映射一个组件
// 后面再讨论嵌套路由
const routes = [
{
paht: "/home",
template: Home
},
{
path: "/about",
template: About
}
]
// 创建路由实例并传递 routes 配置
const router = new VueRouter({
// 内部提供了 history 模式的实现。为了简单起见,我们再这里使用hash模式。
history: VueRouter.createWebHashHistory(),
routes
})
// 创建并挂载实例根
const app = Vue.createApp({
router
})
app.mount("#app")
</script>
</body>
</html>