热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

vue路由基础使用方法

vue路由配置首先安装npminstall--save-devvue-router使用步骤:1、在main.js引入2、使用VueRouter3、引入组件4、在m

vue路由配置

首先安装

npm install --save-dev vue-router

使用步骤:
1、在main.js引入
2、使用VueRouter
3、引入组件
4、在main.js配置路由
5、在main.js实例化VueRouoter
6、在main.js创建和挂载

main.js完整代码

import Vue from 'vue'
import App from './App.vue'
import VueResource from 'vue-resource'
Vue.use(VueResource);
import VueRouter from 'vue-router' //1、引入VueRouter
Vue.use(VueRouter) //2、使用VueRouter import Home from './components/Home.vue'//3、引入组件配置路由
import News from './components/News.vue'
const routes = [ //4、配置路由{path:'/home',component:Home},{path:'/news',component:News},//默认加载的组件{path:'*',redirect:'/home'}
]//5、实例化VueRouoter
const router = new VueRouter({routes //缩写 相当于 routes:routes
})new Vue({el: '#app',router, //6、创建和挂载render: h => h(App)
})

App.vue





路由传值


动态路由:

1、引入对应的组件(如news-conteimport Content from ‘./components/Content.vue’

2、配置动态路由

routes:[{path:'/content/:id',component:Content}
]

3、router-link设置为{{key}}--------{{item}}

4、在对应的页面使用this.$route.params获取动态路由的值(通常在mounted生命周期内)
代码如下:

main.js(为了篇幅简洁,此处省略了一些内容,请对号入座)

const routes = [{path:'/home',component:Home},{path:'/news',component:Live},{path:'/content/:aid',component:Content},//动态路由{path:'*',redirect:'/home'}
]

src/components/Content.vue



src/components/Home.vue


运行效果:
这里写图片描述

这里写图片描述

可以看到点击列表想会传送对应的列表下标




使用get传值

同样四个步骤

1、引入对应的组件,如import Content from ‘./components/Content.vue’

2、main.js配置动态路由(此处不需要 :aid 之类)

routes:[{path:'/content',component:Content}
]

3、Home.vue的route-link设置为
{{key}}--------{{item}}

4、在对应的页面(Content.vue)使用this.$route.query获取动态路由的值(通常在mounted生命周期内)。

相信你会知道怎么替换的,此处就不贴代码了。




路由组件化:

我们可以将组件封装到一个组件中,方便管理
比如我们放在src/router/index.js

import Vue from 'vue'
import Router from 'vue-router'
import Home from '@/pages/home/Home'
import City from '@/pages/city/City'
import Detail from '@/pages/detail/Detail'
//这里的@类似一个别名,在build/webpack.base.conf.js的resolve.alias配置
Vue.use(Router)export default new Router({routes: [{path: '/',name: 'Home',component: Home}, {path: '/city',name: 'City',component: City}, {path: '/detail/:id',name: 'Detail',component: Detail}],
})

src/main.js

import Vue from 'vue'
import App from './App'
import router from './router' //引入router/* eslint-disable no-new */
new Vue({el: '#app',router, //创建与挂载components: { App },template: ''
})

总结

router使用的基本步骤:
1、在main.js引入
2、使用VueRouter
3、引入组件
4、在main.js配置路由
5、在main.js实例化VueRouoter
6、在main.js创建和挂载

路由传值:
动态路由,路由里配置,使用this.$route.params接收
get传值,路由里不用配置,router-link里拼接,使用this.$route.query

路由组件化
将路由打包成一个组件,然后在main.js直接引入使用。


推荐阅读
  • 在 Vue 应用开发中,页面状态管理和跨页面数据传递是常见需求。本文将详细介绍 Vue Router 提供的两种有效方式,帮助开发者高效地实现页面间的数据交互与状态同步,同时分享一些最佳实践和注意事项。 ... [详细]
  • 深入浅出 webpack 系列(二):实现 PostCSS 代码的编译与优化
    在前一篇文章中,我们探讨了如何通过基础配置使 Webpack 完成 ES6 代码的编译。本文将深入讲解如何利用 Webpack 实现 PostCSS 代码的编译与优化,包括配置相关插件和加载器,以提升开发效率和代码质量。我们将详细介绍每个步骤,并提供实用示例,帮助读者更好地理解和应用这些技术。 ... [详细]
  • 为了确保iOS应用能够安全地访问网站数据,本文介绍了如何在Nginx服务器上轻松配置CertBot以实现SSL证书的自动化管理。通过这一过程,可以确保应用始终使用HTTPS协议,从而提升数据传输的安全性和可靠性。文章详细阐述了配置步骤和常见问题的解决方法,帮助读者快速上手并成功部署SSL证书。 ... [详细]
  • 在 CentOS 7 系统中安装 Scrapy 时遇到了一些挑战。尽管 Scrapy 在 Ubuntu 上安装简便,但在 CentOS 7 上需要额外的配置和步骤。本文总结了常见问题及其解决方案,帮助用户顺利安装并使用 Scrapy 进行网络爬虫开发。 ... [详细]
  • Python 程序转换为 EXE 文件:详细解析 .py 脚本打包成独立可执行文件的方法与技巧
    在开发了几个简单的爬虫 Python 程序后,我决定将其封装成独立的可执行文件以便于分发和使用。为了实现这一目标,首先需要解决的是如何将 Python 脚本转换为 EXE 文件。在这个过程中,我选择了 Qt 作为 GUI 框架,因为之前对此并不熟悉,希望通过这个项目进一步学习和掌握 Qt 的基本用法。本文将详细介绍从 .py 脚本到 EXE 文件的整个过程,包括所需工具、具体步骤以及常见问题的解决方案。 ... [详细]
  • 本文探讨了如何利用Java代码获取当前本地操作系统中正在运行的进程列表及其详细信息。通过引入必要的包和类,开发者可以轻松地实现这一功能,为系统监控和管理提供有力支持。示例代码展示了具体实现方法,适用于需要了解系统进程状态的开发人员。 ... [详细]
  • 为了优化用户体验,本文探讨了如何调整下拉菜单的宽度。通过合理设置宽度,可以提升界面的美观性和易用性。文章提供了具体的代码示例,帮助开发者实现这一目标。例如,可以通过 CSS 或 JavaScript 来动态调整下拉菜单的宽度,确保其在不同设备和屏幕尺寸上都能保持良好的显示效果。 ... [详细]
  • 使用 Vuex 管理表单状态:当输入框失去焦点时自动恢复初始值 ... [详细]
  • 在Ubuntu上安装MySQL时解决缺少libaio.so.1错误及libaio在MySQL中的重要性分析
    在Ubuntu系统上安装MySQL时,遇到了缺少libaio.so.1的错误。本文详细介绍了如何解决这一问题,并深入探讨了libaio库在MySQL性能优化中的重要作用。对于初学者而言,理解这些依赖关系和配置步骤是成功安装和运行MySQL的关键。通过本文的指导,读者可以顺利解决相关问题,并更好地掌握MySQL在Linux环境下的部署与管理。 ... [详细]
  • 本文介绍了 Vue 开发的入门指南,重点讲解了开发环境的配置与项目的基本搭建。推荐使用 WebStorm 作为 IDE,其下载地址为 。安装时请选择适合您操作系统的版本,并通过 获取激活码。WebStorm 是前端开发者的理想选择,提供了丰富的功能和强大的代码编辑能力。 ... [详细]
  • 在对WordPress Duplicator插件0.4.4版本的安全评估中,发现其存在跨站脚本(XSS)攻击漏洞。此漏洞可能被利用进行恶意操作,建议用户及时更新至最新版本以确保系统安全。测试方法仅限于安全研究和教学目的,使用时需自行承担风险。漏洞编号:HTB23162。 ... [详细]
  • 本文介绍了一种自定义的Android圆形进度条视图,支持在进度条上显示数字,并在圆心位置展示文字内容。通过自定义绘图和组件组合的方式实现,详细展示了自定义View的开发流程和关键技术点。示例代码和效果展示将在文章末尾提供。 ... [详细]
  • 使用 ListView 浏览安卓系统中的回收站文件 ... [详细]
  • Python 伦理黑客技术:深入探讨后门攻击(第三部分)
    在《Python 伦理黑客技术:深入探讨后门攻击(第三部分)》中,作者详细分析了后门攻击中的Socket问题。由于TCP协议基于流,难以确定消息批次的结束点,这给后门攻击的实现带来了挑战。为了解决这一问题,文章提出了一系列有效的技术方案,包括使用特定的分隔符和长度前缀,以确保数据包的准确传输和解析。这些方法不仅提高了攻击的隐蔽性和可靠性,还为安全研究人员提供了宝贵的参考。 ... [详细]
  • 在Linux系统中,网络配置是至关重要的任务之一。本文详细解析了Firewalld和Netfilter机制,并探讨了iptables的应用。通过使用`ip addr show`命令来查看网卡IP地址(需要安装`iproute`包),当网卡未分配IP地址或处于关闭状态时,可以通过`ip link set`命令进行配置和激活。此外,文章还介绍了如何利用Firewalld和iptables实现网络流量控制和安全策略管理,为系统管理员提供了实用的操作指南。 ... [详细]
author-avatar
x将臣x
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有