
vue create test








按照下面的结构创建pages文件夹
在pages文件夹里面分别创建Home和User文件夹
分别在这两个文件夹下面创建index.vue文件

在Home路由组件index.vue下
<template>
<div class="">
Home
</div>
</template>
<script>
export default {
name: '',
props: {},
data () {
return {}
},
components: {
},
computed: {
},
mounted: {
},
watch: {
},
methods: {
},
created () {
},
mounted () {
},
}
</script>
<style scoped>
</style>
在User路由组件index.vue下
<template>
<div class="">
User
</div>
</template>
<script>
export default {
name: '',
props: {},
data () {
return {}
},
components: {
},
computed: {
},
mounted: {
},
watch: {
},
methods: {
},
created () {
},
mounted () {
},
}
</script>
<style scoped>
</style>
vue3 是可以下载最新版的vue-router的
npm install vue-router@next
import { createWebHistory,createRouter } from "vue-router";
(导入组件的时候,import后面跟着的字符串是可以我们自定义命名的)
import Home from '@/pages/Home'
import User from '@/pages/User'
这里为啥是@,因为上面的链接里面在基本配置中将src变成了@,
但是 写成如下这样也没有问题
import Home from 'src/pages/Home'
import User from 'src/pages/User'
const history = createWebHistory();
path是访问路径(自定义)
component是上面导入的自定义组件的名字
const router = createRouter({
history,
routes: [
{
path:'/',
component:Home
},
{
path:'/user',
component:User
}
]
})
export default router;
import { createWebHistory,createRouter } from "vue-router";
import Home from '@/pages/Home'
import User from '@/pages/User'
import modue from 'src/';
const history = createWebHistory();
const router = createRouter({
history,
routes: [
{
path:'/',
component:Home
},
{
path:'/user',
component:User
}
]
})
export default router;
在index.js中,
export default router;
router 被暴露出来了,在main.js 中导入:
import router from '@/router'
createApp(App).use(router).mount('#app')
import { createApp } from 'vue'
import App from './App.vue'
import router from '@/router'
createApp(App).use(router).mount('#app')
<router-view></router-view>
<router-link to="/">首页</router-link>
<router-link to="/user">用户</router-link>
解析:
跳转组件的书写格式如下:
<router-link to=""></router-link>
当在页面上点击,首页的时候就跳转到对应的to的路径
to属性后面跟的参数,与router的index.js中的path路径一致才能实现相对应的跳转。
<template>
<router-link to="/home">首页 </router-link>
<router-link to="/user">用户</router-link>
<router-view></router-view>
</template>
<script>
export default {
name: 'App',
components: {
// HelloWorld
}
}
</script>
<style>
#app {
font-family: Avenir, Helvetica, Arial, sans-serif;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
text-align: center;
color: #2c3e50;
margin-top: 60px;
}
</style>

点击用户!!!
