vue-router 快速入门
配置路由
routes.js
export const routes = [
{ path: '',component: Home },{ path: '/gifs',component: Gifs },{ path: '/user/:id',component: User }
//指定路由和对应要渲染的组件
//404的path应该是'*',要放在最末尾,当前面的都匹配不到时才匹配到404页面
//this.$route.params.id 可以从路由中拿到id数据
]
{ path: '',component: Home },{ path: '/gifs',component: Gifs },{ path: '/user/:id',component: User }
//指定路由和对应要渲染的组件
//404的path应该是'*',要放在最末尾,当前面的都匹配不到时才匹配到404页面
//this.$route.params.id 可以从路由中拿到id数据
]
main.js
Vue.use(VueRouter)
//路由初始化
const router = new VueRouter({
routes
})
//路由初始化
const router = new VueRouter({
routes
})
//将路由注入根组件
new Vue({
el: '#app',...
router,render: h => h(App)
})
App.vue
在模板中标注出组件渲染的位置
#号的含义
#号前表示的是发送给服务端的请求,要求返回html文件,而#号后表示的是发送给本地js的请求以寻求解决
路由参数动态绑定
使用watch
路由的数据传递
传query参数可以达到地址栏出现/?locale=en&list=2
通过 $route.query.键名 来访问
命名视图
router-view 可以通过配置名字 name 来指定组件渲染的位置,增加了组件的复用性,比如分成 header main hero footer 来分别在一个视图中的不同位置上加载不同的组件
组件懒加载
我们只需要加载我们需要的组件呈现给用户,而其他不需要第一时间加载的组件,可以使用 webpack 实现异步加载,只在需要的时候才会发出请求,请求加载另一个组件
routes.js
{
require.ensure(['./components/user/User.vue'],() => {
resolve(require('./components/user/User.vue'))
},'GroupName')
}
//webpack 异步加载,通过组名,将要同时一起加载的组件打包加载
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持编程之家。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。