useRouter一定要放在setup方法内的顶层,否则作用域改变useRouter()执行返回的是undefined。
正确使用
<script setup>import{ useRouter }from'vue-router';const router =useRouter();consttoLogin=()=>{
router.push({name:'login'});};</script>
错误使用
<script setup>import{ useRouter }from'vue-router';consttoLogin=()=>{const router =useRouter();//router为 undefine
router.push({name:'login'});};</script>
如果需要在其他js文件的非setup中使用路由对象,可以直接引用createRouter()创建的路由对象。
版权归原作者 Paul_Chan_ 所有, 如有侵权,请联系我们删除。