十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
这篇文章主要介绍了vue-router有什么用,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。
创新互联专业提供成都主机托管四川主机托管成都服务器托管四川服务器托管,支持按月付款!我们的承诺:贵族品质、平民价格,机房位于中国电信/网通/移动机房,西信服务器托管服务有保障!
vue-router 快速入门
配置路由
$ npm install vue-router --save
routes.js
import Home from './pages/Home.vue' import Gifs from './pages/Gifs.vue' import User from './pages/User.vue' export const routes = [ { path: '', component: Home }, { path: '/gifs', component: Gifs }, { path: '/user/:id', component: User } //指定路由和对应要渲染的组件 //404的path应该是'*',要放在最末尾,当前面的都匹配不到时才匹配到404页面 //this.$route.params.id 可以从路由中拿到id数据 ]
main.js
import VueRouter from 'vue-router' import { routes } from './routes' Vue.use(VueRouter) //路由初始化 const router = new VueRouter({ routes }) //将路由注入根组件 new Vue({ el: '#app', ... router, render: h => h(App) })
App.vue
在模板中标注出组件渲染的位置
#号的含义
#号前表示的是发送给服务端的请求,要求返回html文件,而#号后表示的是发送给本地js的请求以寻求解决
路由参数动态绑定
使用watch
watch: { '$route'(to,from) { //to当前路由,from上一个路由 this.id = to.params.id } }
路由的数据传递
复制代码 代码如下:
传query参数可以达到地址栏出现/?locale=en&list=2
通过 $route.query.键名 来访问
命名视图
router-view 可以通过配置名字 name 来指定组件渲染的位置,增加了组件的复用性,比如分成 header main hero footer 来分别在一个视图中的不同位置上加载不同的组件
组件懒加载
我们只需要加载我们需要的组件呈现给用户,而其他不需要第一时间加载的组件,可以使用 webpack 实现异步加载,只在需要的时候才会发出请求,请求加载另一个组件
routes.js
const User = resolve => { require.ensure(['./components/user/User.vue'], () => { resolve(require('./components/user/User.vue')) }, 'GroupName') } //webpack 异步加载,通过组名,将要同时一起加载的组件打包加载
感谢你能够认真阅读完这篇文章,希望小编分享的“vue-router有什么用”这篇文章对大家有帮助,同时也希望大家多多支持创新互联,关注创新互联行业资讯频道,更多相关知识等着你来学习!