Vue3 compositionAPI中setup函数如何访问路由
问题描述:在vue2.x中可以通过this访问到$router对象,this是当前vue实例,但是在vue3的seetup函数中是无法访问this的(为undefined),所以无法通过this来访问$router对象。解决方法:1.引入路由函数// 引入路由函数import { useRouter } from "vue-router";// 使用setup(){// 初始化路由const ro
·
问题描述:
在vue2.x中可以通过this访问到$router对象,this是当前vue实例,但是在vue3的setup函数中是无法访问this的(为undefined),所以无法通过this来访问$router对象。
解决方法:
1.引入路由函数
// 引入路由函数
import { useRouter } from "vue-router";
// 使用
setup(){
// 初始化路由
const router = useRouter();
router.push({
path:'/login'
});
}
2.使用setup函数的第二个参数context,context
是一个普通 JavaScript 对象,暴露了其它可能在 setup
中有用的值:
具体能访问到的有用的属性:
其中root是vue的根实例,实例上有$router对象,于是可以通过root.$router访问到路由对象。
setup(props , { root }){
const name = ref("")
const orderId = ref("");
orderId.value = root.$route.query.orderId;
root.$router.push({
path: '/ccList',
query: { name: name.value },
});
return {
orderId,
name ,
};
};
更多推荐
已为社区贡献5条内容
所有评论(0)