这篇文章主要讲解了“Vue3怎么获取地址栏参数”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Vue3怎么获取地址栏参数”吧!
Vue3 获取地址栏参数有两个方式:查询参数和路径参数。
Vue3获取地址栏参数是从路由router中获取,查询参数和路径参数获取方式不一样。
比如地址 http://127.0.0.1:5173/?code=123123,
我们要获取code参数可以路由router获取,注意是route.query
首先需要在router/index.js中定义好路由
import { createRouter, createWebHistory } from 'vue-router'
const router = createRouter({
history: createWebHistory(import.meta.env.BASE_URL),
routes: [
{
path: '/',
name: 'home',
component: () => import('../views/home.vue')
},
]
})
export default router
然后就可以在组件中通过useRouter获取query参数了
<script setup>
import {useRouter} from 'vue-router'
const { currentRoute } = useRouter();
const route = currentRoute.value;
onMounted(()=>{
let code=route.query.code
console.log('code', code)
})
</script>
路径参数指的是参数是拼接在地址栏中的。
比如地址 http://127.0.0.1:5173/123123
最后的123123就是参数。
这种参数首先要定义要路由,在路由中对参数进行命名,下面代码中:code就是命名一个路径参数code
首先需要在router/index.js中定义好路由以及路径参数
import { createRouter, createWebHistory } from 'vue-router'
const router = createRouter({
history: createWebHistory(import.meta.env.BASE_URL),
routes: [
{
path: '/:code',
name: 'home',
component: () => import('../views/home.vue')
},
]
})
export default router
接着就可以在home.vue组件中通过路由useRouter得到参数,注意是route.params
<script setup>
import {useRouter} from 'vue-router'
const { currentRoute } = useRouter();
const route = currentRoute.value;
onMounted(()=>{
let code=route.params.code
console.log('code', code)
})
</script>
入口页面App.vue
必须定义好router-view
标签,不能图简单将上面定义的home组件直接引入到App.vue
中,如果直接引入走的就不是路由了,因而通过useRouter
也无法获取到路由参数了
如下错误示例:
<template>
<div id="app">
<home></home>
</div>
</template>
<script setup>
import home from './views/home.vue';
</script>
正确应该是使用router-view
标签
<template>
<div id="app">
<router-view></router-view>
</div>
</template>
<script setup>
</script>
感谢各位的阅读,以上就是“Vue3怎么获取地址栏参数”的内容了,经过本文的学习后,相信大家对Vue3怎么获取地址栏参数这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是亿速云,小编将为大家推送更多相关知识点的文章,欢迎关注!
亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。
原文链接:https://blog.csdn.net/wlddhj/article/details/130315139