Vue之路由跳转

亦凉 2022-03-17 05:17 423阅读 0赞

所谓的router就是动态的往根里面挂载组件,而不是手动挂载。

vue路由配置的步骤:

  1. https://router.vuejs.org/
  2. 1.安装
  3. npm install vue-router --save / cnpm install vue-router --save
  4. 2、引入并 Vue.use(VueRouter) (main.js)
  5. import VueRouter from 'vue-router'
  6. Vue.use(VueRouter)
  7. 3、配置路由
  8. (1)、创建组件 引入组件
  9. (2)、定义路由 (建议复制)
  10. const routes = [
  11. { path: '/home', component: Home },
  12. { path: '/bar', component: News },
  13. { path: '*', redirect: '/home' } /*默认跳转路由*/
  14. ]
  15. (3)、实例化VueRouter
  16. const router = new VueRouter({
  17. routes // (缩写)相当于 routes: routes
  18. })
  19. (4)、挂载
  20. new Vue({
  21. el: '#app',
  22. router
  23. render: h => h(App)
  24. })
  25. (5)、根组件的模板里面放上这句话 <router-view></router-view>
  26. (6)、路由跳转
  27. <router-link to="/foo">Go to Foo</router-link>
  28. <router-link to="/bar">Go to Bar</router-link>

下面我用代码来做详细讲解:

目录结构
在这里插入图片描述

main.js

  1. // The Vue build version to load with the `import` command
  2. // (runtime-only or standalone) has been set in webpack.base.conf with an alias.
  3. import Vue from 'vue'
  4. import App from './App'
  5. //导入并使用
  6. import VueRouter from 'vue-router'
  7. Vue.use(VueRouter)
  8. Vue.config.productionTip = false
  9. //1.创建组件
  10. import Home from './components/Home.vue';
  11. import News from './components/News.vue';
  12. //2.配置路由 注意,名字一定不能错
  13. const routes = [ //若这里是 xxx,那么第25行应是 routers:xxx
  14. { path: '/home', component: Home },
  15. { path: '/news', component: News },
  16. { path: '*', redirect: '/home' }//默认跳转路由
  17. ]
  18. //3.实例化VueRouter 注意,名字一定不能错
  19. const router = new VueRouter({
  20. routes // (缩写)相当于 routes: routes
  21. })
  22. //4.挂载路由
  23. /* eslint-disable no-new */
  24. new Vue({
  25. el: '#app',
  26. router,
  27. components: { App },
  28. template: '<App/>'
  29. })
  30. //5.根组件的模板里放上这句话 <router-view></router-view>

Home.vue

  1. <template>
  2. <!-- 所有的内容要被根节点包含起来-->
  3. <div id="home">
  4. 我是首页组件
  5. <br>
  6. </div>
  7. </template>
  8. <script>
  9. export default {
  10. data(){
  11. return {
  12. msg:'我是一个home组件',
  13. title:'今天 2019/2/21'
  14. }
  15. }
  16. }
  17. </script>

News.vue

  1. <template>
  2. <!-- 所有的内容要被根节点包含起来-->
  3. <div id="news">
  4. 我是一个新闻组件
  5. <br>
  6. </div>
  7. </template>
  8. <script>
  9. export default {
  10. data(){
  11. return {
  12. msg:'我是一个news组件',
  13. }
  14. }
  15. }
  16. </script>

App.vue

  1. <template>
  2. <div id="app">
  3. <router-link to="/home">Go to Home</router-link>
  4. <router-link to="/news">Go to News</router-link>
  5. <hr>
  6. <router-view></router-view>
  7. </div>
  8. </template>
  9. <script>
  10. export default {
  11. name: 'App',
  12. data(){
  13. return{
  14. msg:'你好vue'
  15. }
  16. }
  17. }
  18. </script>
  19. <style>
  20. </style>

最后在网页中呈现的效果如下图:在这里插入图片描述
有关Vue路由跳转的步骤及方法我做的都应该很详细了,详情请参考官方文档: https://cn.vuejs.org/ ,若有任何疑问或是不解请在下方评论,谢谢。

发表评论

表情:
评论列表 (有 0 条评论,423人围观)

还没有评论,来说两句吧...

相关阅读

    相关 Vue

    所谓的router就是动态的往根里面挂载组件,而不是手动挂载。 vue路由配置的步骤: https://router.vuejs.org/ 1.安

    相关 Vue

    [【Vue】路由跳转][Vue] 路由跳转有几种方式,我用的最多的是$router.push的方法: 实践: 例如下面的页面,要求点详情跳转到详情页。 ![在这里

    相关 Vue

    路由跳转有几种方式,我用的最多的是$router.push的方法: 实践: 例如下面的页面,要求点详情跳转到详情页。 ![在这里插入图片描述][watermark_

    相关 Vue+传参

    之前在原生JS的开发中,我们经常会用到根据某一状态进行页面的跳转。 比如:登录成功跳到首页,点击商品列表的某个商品跳转商品详情等。 而常见的写法就是: locat