1.安装依赖npm install vue-router
因为中途报了个版本错误,我使用以下命令
npm install --legacy-peer-deps vue-router@3.5.2
2.src目录下创建router/index.js文件,并在components下创建一个A.vue文件测试
import Vue from 'vue'
import Router from 'vue-router'
Vue.use(Router)
const routes = [{
path: '/',
component: () =>
import ('../components/HelloWorld.vue')
},
{
path: '/a',
component: () =>
import ('../components/A.vue')
}
]
const router = new Router({
routes
})
export default router
A.vue
<template>
<div class="hello">A页面</div>
</template>
<script>
export default {
name: 'A',
}
</script>
<!-- Add "scoped" attribute to limit CSS to this component only -->
<style scoped>
h3 {
margin: 40px 0 0;
}
ul {
list-style-type: none;
padding: 0;
}
li {
display: inline-block;
margin: 0 10px;
}
a {
color: #42b983;
}
</style>
3.main.js导入router
import Vue from 'vue'
import App from './App.vue'
import router from './router/index.js'
Vue.config.productionTip = false
new Vue({
render: h => h(App),
router
}).$mount('#app')
4.App.vue添加< router-view></ router-view >
<template>
<div id="app">
<router-view></router-view>
</div>
</template>
<script>
export default {
name: 'App',
}
</script>
5.HelloWorld.vue添加router-link to="/a">跳转到a页面< /router-link>
<template>
<div class="hello">
<router-link to="/a">跳转到a页面</router-link>
<h1>{{ msg }}</h1>
</div>
</template>
<script>
export default {
name: 'HelloWorld',
props: {
msg: String
}
}
</script>
6.访问地址测试跳转