我想在Vue.js中做一个类似于香草javascript的重定向

window.location.href = 'some_url'

我如何在Vue.js中实现这一点?


当前回答

如果你正在使用vue-router,你应该使用router.go(path)来导航到任何特定的路由。路由器可以在组件中使用。$router来访问。

否则,window.location.href = 'some url';适用于非单页应用程序。

编辑:router.go()在VueJS 2.0中更改。你可以使用$router。Push ({name: "yourroutename"})或者只是router.push("yourroutename")现在重定向。

文档

注意:在控制器中使用:this.$router。Push ({name: 'routename'})

其他回答

在组件脚本标记中,您可以使用路由器并执行类似的操作

this.$router.push('/url-path')

从api获取特定页面 最简单的方法是向URL添加另一个参数,该参数将破坏缓存。

router.replace(数据。电流+ '?t=' + (new Date())).getTime())

例如

router.beforeEach((to, from, next) => {

axios
    .get('http://domazin.com/currentpage')
    .then(response => {
     const data = response.data
       if (to.path != data.current) {
              router.replace(data.current + '?t=' + (new Date()).getTime())
       } else {
          next()
       }
    })
    .catch(error => {
        console.log(error)
});

);

如果你正在使用vue-router,你应该使用router.go(path)来导航到任何特定的路由。路由器可以在组件中使用。$router来访问。

否则,window.location.href = 'some url';适用于非单页应用程序。

编辑:router.go()在VueJS 2.0中更改。你可以使用$router。Push ({name: "yourroutename"})或者只是router.push("yourroutename")现在重定向。

文档

注意:在控制器中使用:this.$router。Push ({name: 'routename'})

只使用:

window.location.href = "http://siwei.me"

不要使用vue-router,否则会被重定向到 “http://yoursite.com/ # ! / http://siwei.me”

我的环境:节点6.2.1,vue 1.0.21, Ubuntu。

美元。路由器。Push可以用来重定向vue.js中的页面

this.$router.push(url);

这个例子。美元router.push(“回家”); 此方法不会刷新页面