Vue.js使用后退按钮进行路由

时间:2016-10-21 17:41:18

标签: javascript vue.js vue-router

我已经使用了这个Vue.js路由示例应用程序。

https://github.com/chrisvfritz/vue-2.0-simple-routing-example

src/main.js 我有太多的数据价值。

const app = new Vue({
  el: '#app',
  data: {
    currentRoute: window.location.pathname,
    token : "",
    errorMessage : '', etc...etc..
  },

现在使用socket.io我将令牌设置为"sdawdda2d2ada2ad22ad"

当应用程序启动时,currentRoute等于"/" 它的okey,第一页加载。 src/routes.js

'/': 'Home',
'/about': 'About'

当我想检查/ about(url:localhost:8080/about)时,它的工作正常,但令牌和errorMessage再次为空,因为应用程序再次创建。

如果我想更改页面而不丢失令牌值,我可以使用:

this.currentRoute = "/about"       (url: localhost:8080)

它工作得很好,但网址没有改变,所以我不能在浏览器中使用后退按钮。 如果我不希望在浏览器转到/关闭时丢失令牌值,我如何分离我的Vue应用程序?

非常感谢!

2 个答案:

答案 0 :(得分:7)

您可以执行this.$router.go(-1)vm.$router.go(-1)之类的操作以继续this.$router.go(1)以获取更多click here

答案 1 :(得分:1)

当您从Home路线转到About路线时,您需要使用<router-link>进行导航。

home页面上,您可以按以下方式导航至about页面:

<router-link to="/about">Go to my About Page</router-link>

生成正确的html锚标记<a>并正确设置路径。当您单击它时,它将转到about组件,而不是从服务器刷新整个html网页(使用应用程序脚本)。

当只改变路径组件时,Vue实例上的所有其他Vue参数都将保留。

请在此处查看vue-routerhttp://router.vuejs.org/en/essentials/getting-started.html

请记住在主应用中为路线设置占位符,如下所示:<router-view></router-view>。当您更改路线时,您的HomeAbout组件会被渲染到此router-view