vue-router 学习快速入门
发布于 2020-12-30|
本篇文章主要介绍了vue-router 学习快速入门,小妖觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小妖过来看看吧
vue-router 快速入门配置路由
```bash
$ npm install vue-router --save
```
routes.js
```javascript
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
```javascript
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
```javascript
```
在模板中标注出组件渲染的位置#号的含义#号前表示的是发送给服务端的请求,要求返回html文件,而#号后表示的是发送给本地js的请求以寻求解决路由参数动态绑定使用watch
```javascript
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
```javascript
const User = resolve => {
require.ensure(['./components/user/User.vue'], () => {
resolve(require('./components/user/User.vue'))
}, 'GroupName')
}
//webpack 异步加载,通过组名,将要同时一起加载的组件打包加载
```
原文地址: http://blog.csdn.net/teckeryu/article/details/58637101