我们一般在vue项目中都会用到路由,而vue-router是vue.js官方的路由管理器。之前也被问到路由器的问题,今天有空再说吧~~~::)∪﹏∪看版本太长了↓|this.$route:当前激活路由的信息对象。每个对象都是本地的,可以获取当前路由的path、name、params、query等属性。|this.$router:全局路由器实例。通过将路由器实例注入到Vue根实例中,再注入到各个子组件中,整个应用就具备了路由功能。它包含许多属性和对象(如history对象),任何页面也可以调用它的push()、replace()、go()等方法。用过vue的童鞋都知道,路由跳转分为程序式和声明式。Declarative 简单的使用router-link组件来导航,通过传入to属性来指定链接(router-link默认会被渲染成a标签)。 当你需要在页面中嵌套子路由,而且页面不跳转时,这个方法不太好用哈哈哈...直接在router-view中渲染子页面即可。要以编程方式使用此方法,您需要导入VueRouter并调用它。然后说说使用vue-router的步骤(以下是程序化的):1.定义两个单独的.vue组件用于路由跳转:home.vue和user.vue;2.导入vue,vue-router,并定义路由,每个路由包含一个组件属性,映射一个组件---router.jsimportVuefrom'vue'importRouterfrom'vue-router'importHomefrom'./home.vue'importUserfrom'./user.vue'Vue.use(Router);3.创建路由器实例并传递路由配置---router.jsconstroutes=\[{path:'/home',component:Home},{path:'/user',component:User}\]constrouter=新路由器({路由})4。在vue根实例中注入路由,这样路由就可以在任何其他组件中访问---main.jsimportrouterfrom'./router'newVue({router,render:h=>h(App)})...上面的user和home组件:this.$router和this.$route。这两种方法在使用上大致相同,但还是有区别的。可以看到this.$route显示的是当前活跃路由的信息对象。该对象是本地的,可以获取当前路由的path、name、params、query等属性,这里不再赘述。其中,$route.matched是一个包含当前路由所有嵌套记录的数组,即routes配置中的object数组,包括自身信息和children数据。比如我的路由配置是:constrouter=newVueRouter({routes:\[//下面的对象是路由记录{path:'/taskList',component:TaskList,name:'tasklist',children:\[{path:'/taskDetail',component:TaskDetail,name:'TaskDetails'}\]}\]})this.$route中匹配展开的结果为:判断是否登录,可以查看meta通过遍历$route.matched在路由记录中添加字段。另外,在vue实例内部,还可以通过this.$router访问路由实例,这是一个全局路由实例。router实例被注入到vue根实例中,再注入到各个子组件中,从而使整个应用具有路由功能。在任意一个子组件中打印this.$router可以得到:它包含了很多属性和对象(比如history对象),任何页面也可以调用它的push()、replace()、go()等方法。push()方法将向历史添加一条记录。当点击浏览器的后退按钮时,我们可以返回到上一页。当我们点击
