深入理解vue2.0路由如何配置问题

发布时间 - 2026-01-11 02:24:11    点击率:

这两天学习了Vue.js 感觉路由这个地方知识点挺多的,而且很重要,所以,今天添加一点小笔记。

项目基本手脚架搭建完毕后,建一个router文件夹,里面配置一个index.js文件。

文件内容:

npm install vue-router vue-resource --save-dev(安装 vue 路由模块vue-router和网络请求模块vue-resource)

import Vue from 'vue' 
import Router from 'vue-router' (----引入路由---注释说明) 
import About from '@/components/about'(--这些需要引入的是components文件夹下面创建的一些模板---相对路径----about代表about.vue模块) 
import Home from '@/components/home' 
import Brand from '@/components/brand' 
import Company from '@/components/company' 
import Connect from '@/components/connect' 
import Main from '@/components/main' 
import Join from '@/components/join' 
import News from '@/components/news' 
import Products from '@/components/products' 
import son1 from '@/components/son1' 
import son2 from '@/components/son2' 
import list from '@/components/list' 
import newList from '@/components/newList' 
import culture from '@/components/culture' 
import certification from '@/components/certification' 
import zhuanjia from '@/components/zhuanjia' 
Vue.use(Router) (--使用---) 
 
export default new Router({ 
 routes: [ 
  { 
   path: '/main', 
   name: 'main', 
   component: Main 
  },-------------------------------- 
  { path: '/',           这里是路由重定向,比如页面加载时候进入首页 
   redirect: '/main'          (比如给路由一个选中后的样式为红色 那么这里就能用到了---.router-link-active{样式}) 
  },--------------------------------- 
  {---------------------这里是配置子路由 
   path: '/brand', 
   name: 'brand', 
   component: Brand, 
   children: [ 
    { 
     path: '/', 
     name: 'newList', 
     component: newList 
    }, 
    { 
     path: '/brand/culture', 
     name: 'culture', 
     component: culture 
    }, 
    { 
     path: '/brand/certification', 
     name: 'certification', 
     component: certification 
    }, 
    { 
     path: '/brand/zhuanjia', 
     name: 'zhuanjia', 
     component: zhuanjia 
    } 
   ] 
  }, 
  { 
   path: '/about', 
   name: 'about', 
   component: About 
  }, 
  { 
   path: '/company', 
   name: 'company', 
   component: Company 
  }, 
  { 
   path: '/connect', 
   name: 'connect', 
   component: Connect 
  }, 
  { 
   path: '/home', 
   name: 'home', 
   component: Home 
  }, 
  { 
   path: '/join', 
   name: 'join', 
   component: Join, 
   children: [ 
    { 
     path: '/', 
     name: 'son1', 
     component: son1 
    }, 
    { 
     path: '/join/son2', 
     name: 'son2', 
     component: son2 
    } 
   ] 
  }, 
  { 
   path: '/list', 
   name: 'list', 
   component: list 
  }, 
  { 
   path: '/news', 
   name: 'news', 
   component: News 
  }, 
  { 
   path: '/products', 
   name: 'products', 
   component: Products 
  } 
 ] 
}) 

接下来就是在每一个模块文件中加入这样的一句话暴露出去:

<script> 
export default { 
 name: 'about' ---自定义模块名字 
} 
</script> 

在app中我们可以这样写:

 <template> 
 <div id="app1" class="pagebox"> 
    <div style="clear:both;"></div> 
    <ul class="index-tap"> 
      <li><router-link to="/main">首页<p></p></router-link></li> 
      <li><router-link to="/about">关于我们<p></p></router-link></li> 
      <li><router-link to="/products">产品专区<p></p></router-link></li> 
      <li><router-link to="/news">新闻资讯<p></p></router-link></li> 
    </ul> 
    <ul class="index-tap"> 
      <li><router-link to="/company">企业风采<p></p></router-link></li> 
      <li><router-link to="/join">招商加盟<p></p></router-link></li> 
      <li><router-link to="/connect">联系我们<p></p></router-link></li> 
      <li><router-link to="/brand">品牌介绍<p></p></router-link></li> 
    </ul> 
    <div style="clear:both;"></div> 
    <router-view transition transition-mode="out-in"></router-view> 
    <div style="clear:both;"></div> 
    <ul class="index-footer clearx"> 
      <li v-on:click="showph = !showph">电话</li> 
      <li v-on:click="showmap = !showmap">地图</li> 
      <li v-on:click="showd = !showd">分享</li> 
      <!-- JiaThis Button BEGIN --> 
      <transition name="slide-fade"> 
      <div class="jiathis_style_32x32 share" v-show="showd"> 
        <a class="jiathis_button_qzone"></a> 
        <a class="jiathis_button_tsina"></a> 
        <a class="jiathis_button_tqq"></a> 
        <a class="jiathis_button_weixin"></a> 
        <a class="jiathis_button_renren"></a> 
      </div> 
      </transition> 
      <!-- JiaThis Button END --> 
      <transition name="slide-fade"> 
      <div class="share sharephone" v-show="showph"> 
        18305452462 
      </div> 
      </transition> 
      <transition name="slide-fade"> 
      <div class="share showmap" v-show="showmap"> 
        <ditu></ditu>---------------------------------自定义模板 
      </div> 
      </transition> 
    </ul> 
    <div class="fuceng" v-if="showmap"></div> 
 </div> 
</template> 
 
<script> 
import ditu from '@/components/home' 
export default { 
 name: 'app', 
 data () { 
  return { 
   search: '', 
   showd: false, 
   showph: false, 
   showmap: false 
  } 
 }, 
 mounted () { 
  this.init() 
 }, 
 methods: { 
  Search () { 
   if (this.search !== '') { 
    this.$router.push({ 
     path: '/list', 
     query: { 
      serInfo: this.search 
     } 
    }) 
   } else { 
    alert('请输入搜索内容') 
   } 
  }, 
  init: function () { 
   let url = 'http://v3.jiathis.com/code/jia.js' 
   let script = document.createElement('script') 
   script.setAttribute('src', url) 
   document.getElementsByTagName('head')[0].appendChild(script) 
  } 
 }, 
 components: { 
  ditu 
 } 
} 
</script> 

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。


# vue2.0路由配置  # vue2.0路由  # vue2.0  # 路由如何配置  # 详解vue2路由vue-router配置(懒加载)  # 在vue-cli脚手架中配置一个vue-router前端路由  # vue动态路由配置及路由传参的方式  # Vue路由模块化配置的完整步骤  # vue router 配置路由的方法  # 使用vue-router为每个路由配置各自的title  # vue2 中二级路由高亮问题及配置方法  # vue.js路由mode配置之去掉url上默认的#方法  # vue 开发之路由配置方法详解  # vue路由的配置和页面切换详解  # 自定义  # 首页  # 的是  # 我们可以  # 请输入  # 很重要  # 关于我们  # 句话  # 这两天  # 大家多多  # 挺多  # 重定向  # 招商加盟  # 加载  # 就是在  # 完毕后  # culture  # Products  # list  # newList 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: 制作企业网站建设方案,怎样建设一个公司网站?  网站广告牌制作方法,街上的广告牌,横幅,用PS还是其他软件做的?  JS去除重复并统计数量的实现方法  如何在IIS7上新建站点并设置安全权限?  java获取注册ip实例  html5audio标签播放结束怎么触发事件_onended回调方法【教程】  javascript中的try catch异常捕获机制用法分析  Laravel用户认证怎么做_Laravel Breeze脚手架快速实现登录注册功能  android nfc常用标签读取总结  Laravel怎么配置自定义表前缀_Laravel数据库迁移与Eloquent表名映射【步骤】  香港服务器WordPress建站指南:SEO优化与高效部署策略  Laravel如何使用模型观察者?(Observer代码示例)  如何用5美元大硬盘VPS安全高效搭建个人网站?  如何快速搭建高效服务器建站系统?  Laravel如何配置.env文件管理环境变量_Laravel环境变量使用与安全管理  利用JavaScript实现拖拽改变元素大小  如何用IIS7快速搭建并优化网站站点?  百度浏览器ai对话怎么关 百度浏览器ai聊天窗口隐藏  Laravel怎么为数据库表字段添加索引以优化查询  网站视频制作书签怎么做,ie浏览器怎么将网站固定在书签工具栏?  如何在IIS中新建站点并配置端口与IP地址?  python中快速进行多个字符替换的方法小结  如何在云主机上快速搭建网站?  活动邀请函制作网站有哪些,活动邀请函文案?  北京的网站制作公司有哪些,哪个视频网站最好?  Laravel请求验证怎么写_Laravel Validator自定义表单验证规则教程  小米17系列还有一款新机?主打6.9英寸大直屏和旗舰级影像  Laravel如何生成PDF或Excel文件_Laravel文档导出工具与使用教程  Laravel Vite是做什么的_Laravel前端资源打包工具Vite配置与使用  Laravel中的withCount方法怎么高效统计关联模型数量  如何在宝塔面板创建新站点?  开心动漫网站制作软件下载,十分开心动画为何停播?  Laravel如何为API生成Swagger或OpenAPI文档  品牌网站制作公司有哪些,买正品品牌一般去哪个网站买?  使用豆包 AI 辅助进行简单网页 HTML 结构设计  如何在云主机上快速搭建多站点网站?  JS中使用new Date(str)创建时间对象不兼容firefox和ie的解决方法(两种)  高端建站三要素:定制模板、企业官网与响应式设计优化  中山网站推广排名,中山信息港登录入口?  浅谈Javascript中的Label语句  Android自定义控件实现温度旋转按钮效果  Edge浏览器如何截图和滚动截图_微软Edge网页捕获功能使用教程【技巧】  Laravel如何创建自定义中间件?(Middleware代码示例)  微信推文制作网站有哪些,怎么做微信推文,急?  东莞专业网站制作公司有哪些,东莞招聘网站哪个好?  Laravel怎么进行浏览器测试_Laravel Dusk自动化浏览器测试入门  网站制作壁纸教程视频,电脑壁纸网站?  深圳网站制作公司好吗,在深圳找工作哪个网站最好啊?  如何在Ubuntu系统下快速搭建WordPress个人网站?  标题:Vue + Vuex + JWT 身份认证的正确实践与常见误区解析