关键词搜索

源码搜索 ×
×

前端笔记-vue cli中使用router-link进行路由跳转

发布2019-10-02浏览5820次

详情内容

目录

 

 

以前的方法

新方法


 

以前的方法

以前是通过router的push进行跳转,代码如下:

  1. <template>
  2. <div class="XXXXXXXXXXXXXXXXX" id="XXXXX" style="">
  3. <div class="item">
  4. <a><b><h1>XXXXXXXXXXX/h1></b></a>
  5. </div>
  6. <div class="item">
  7. <i class="XXX XXX XXX XXX"></i>
  8. <a @click="goXXXX" class="XXXXX" >XXXXXXXXXX</a>
  9. </div>
  10. ...
  11. ...
  12. ...
  13. ...
  14. ...
  15. </div>
  16. </template>
  17. <script>
  18. export default {
  19. methods:{
  20. goXXXX(){
  21. this.$router.push('/');
  22. },
  23. ...
  24. ...
  25. ...
  26. ...
  27. }
  28. }
  29. </script>
  30. <style>
  31. </style>

这里通过调用了vue中的goXXX方法,然后方法中通过push进行路由跳转

 

新方法

在vue cli中有router-link中有个to,通过这个to即可进行跳转

  1. <router-link tag="div" class="tab-item" to="/search">
  2. <span class="tab-link">搜索</span>
  3. </router-link>

这里要配合router里面的index.js

  1. export default new Router({
  2. routes: [
  3. {
  4. path: '/',
  5. redirect: '/recommend'
  6. },
  7. {
  8. path: '/recommend',
  9. component: Recommend
  10. },
  11. {
  12. path: '/singer',
  13. component: Singer
  14. },
  15. {
  16. path: '/rank',
  17. component: Rank
  18. },
  19. {
  20. path: '/search',
  21. component: Search
  22. }
  23. ]
  24. })

这里给出源码!

tab.vue

  1. <template>
  2. <div class="tab">
  3. <router-link tag="div" class="tab-item" to="/recommend">
  4. <span class="tab-link">推荐</span>
  5. </router-link>
  6. <router-link tag="div" class="tab-item" to="/singer">
  7. <span class="tab-link">歌手</span>
  8. </router-link>
  9. <router-link tag="div" class="tab-item" to="/rank">
  10. <span class="tab-link">排行
  11. </span>
  12. </router-link>
  13. <router-link tag="div" class="tab-item" to="/search">
  14. <span class="tab-link">搜索</span>
  15. </router-link>
  16. </div>
  17. </template>
  18. <script type="text/ecmascript-6">
  19. export default {}
  20. </script>
  21. <style scoped lang="stylus" rel="stylesheet/stylus">
  22. @import "~common/stylus/variable"
  23. .tab
  24. display: flex
  25. height: 44px
  26. line-height: 44px
  27. font-size: $font-size-medium
  28. .tab-item
  29. flex: 1
  30. text-align: center
  31. .tab-link
  32. padding-bottom: 5px
  33. color: $color-text-l
  34. &.router-link-active
  35. .tab-link
  36. color: $color-theme
  37. border-bottom: 2px solid $color-theme
  38. </style>

router中的index.js

  1. import Vue from 'vue'
  2. import Router from 'vue-router'
  3. import Recommend from 'components/recommend/recommend'
  4. import Singer from 'components/singer/singer'
  5. import Rank from 'components/rank/rank'
  6. import Search from 'components/search/search'
  7. Vue.use(Router)
  8. export default new Router({
  9. routes: [
  10. {
  11. path: '/',
  12. redirect: '/recommend'
  13. },
  14. {
  15. path: '/recommend',
  16. component: Recommend
  17. },
  18. {
  19. path: '/singer',
  20. component: Singer
  21. },
  22. {
  23. path: '/rank',
  24. component: Rank
  25. },
  26. {
  27. path: '/search',
  28. component: Search
  29. }
  30. ]
  31. })

运行截图如下:

点击后:

相关技术文章

点击QQ咨询
开通会员
返回顶部
×
微信扫码支付
微信扫码支付
确定支付下载
请使用微信描二维码支付
×

提示信息

×

选择支付方式

  • 微信支付
  • 支付宝付款
确定支付下载