除了用 router-link 创建的路由链接打开路由地址以外,我们也可以在 Vue 组件里使用代码的方式切换路由地址。比如在这个 Index 组件的 div 元素上,给它绑定一个 click 事件,处理方法设置成 onClickText。 在组件里添加一组 script ,在里面默认导出一个对象。
在这个对象里添加一个 methods 属性,里面添加一个方法,名字叫 onClickText。切换路由地址可以使用 $router 上的 push 这个方法,执行一下 this.$router 上面提供的 push 这个方法,可以直接把要切换到的路由地址交给这个方法,比如 /about。
回到浏览器,可以试一下,点击首页上的这行文字,触发了 click 事件以后,就会执行 $router 上的 push 方法,打开 /about 这个地址。
除了 push 方法以外,还有一个 replace 方法也可以做类似的事情,区别是 push 方法会添加新的浏览历史,但是 replace 方法会替换掉当前的这个浏览历史。
刚才我们是在首页,点了首页上的文字以后,被带到了 /about 这个地址,按一下浏览器上的后退按钮,可以打开之前浏览的这个页面。
回到项目,这里再试一下 replace 方法,同样打开的是 /about 这个地址。 回到浏览器,剪切一下这个地址,然后关掉当前这个标签,再访问一下应用,点击首页上这行文字,这次会用 $router 上的 replace 方法,打开 /about 这个地址。
按一下浏览器上的回退,你会发现退到了最开始的空白的标签这个页面。如果切换地址用的是 push 的话,点击浏览器上的回退按钮,应该会打开应用的首页。