在这篇记一次VUE开发环境搭建文章中我记录了一些Vue
开发环境搭建的东西,最近接触了一些关于Router
的内容,在这里做一个记录和分享。
相关设置
稍微理了一下结构,如图
首先我们在main.js
里初始化Vue
:1
2
3
4
5
6
7
8
9import Vue from 'vue'
import App from './App.vue'
import router from './routes.js'
new Vue({
router,
el: '#app',
render: h => h(App)
})
在App.vue
里设置router-view
以便使用Router
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16<template>
<div id="app" v-cloak>
<router-view class="view" keep-alive transition transition-mode="out-in"></router-view>
</div>
</template>
<script>
export default {
components: {}
}
</script>
<style>
[v-cloak] {
display: none;
}
</style>
line 3
设置router-view
line 2
里的v-cloak
配合line 13~15
保证不会在加载的时候出现带有双{}
的符号。
设置router
, routes.js
:1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19import Vue from 'vue'
import Router from 'vue-router'
import home from './pages/home.vue'
import test from './pages/test.vue'
Vue.use(Router)
export default new Router({
routes:[
{
path:'/',
component:home
},
{
path:'/test',
component:test
}
]
})
这里将页面映射到相应的path
上,比如/test
就对应了test.vue
。
使用
比如我们点击后跳转到另一个页面,就可以像下面这样使用:1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28<template>
<div>
<div @click="view">{{msg}}</div>
</div>
</template>
<script>
export default {
data() {
return {
msg: "Hello tom."
};
},
methods:{
view() {
this.$router.push({
path: "/test",
query: {
name:'tom'
}
})
}
}
}
</script>
<style lang="scss">
</style>
query
是传参数用的,可以在下一个页面通过this.$route.query.name
获取。
可以通过this.$router.back(-1)
手动返回。
这里就是我初次试探Router
的内容,这些对应基本的页面来说已经够用了。