我想在Vue.js中做一个类似于香草javascript的重定向
window.location.href = 'some_url'
我如何在Vue.js中实现这一点?
我想在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'})
其他回答
为了与您最初的要求保持一致:
window.location.href = 'some_url'
你可以这样做:
<div @click="this.window.location='some_url'">
</div>
注意,这并没有利用Vue的路由器,但如果你想“在Vue.js中做一个类似于香草javascript的重定向”,这是可行的。
如果你正在使用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('Home')
如果您正在使用Composition API,方法是使用类似这样的东西
<script setup>
import { useRouter } from 'vue-router'
const router = useRouter()
router.push({ name: 'about' })
</script>
您可以使用Vue devtools检查路由的名称
我也建议使用name,因为如果你想要更新某个路径,你不需要重写所有的按钮/链接。
如果你想路由到另一个页面,使用这个
this.$router.push({path: '/pagename'});
如果你想路由到另一个页面的参数使用这个
this.$router.push({
path: '/pagename',
params: {
param1: 'value1',
param2: 'value2'
}
});