vue嵌套路由query传值遇到的问题
①在TopNavMenu组件中通过query方式跳转到goods页面并传传递参数search:
this.$router.push({path: '/goodss', query: {search: this.search}})
②在goods页面接收并打印:
// 监听路由变化,更新路由传递的搜索条件
$route: function (val) {
if (val.path === '/goodss') {
if (val.query.search !== undefined) {
console.log(val.query.search)
this.activeName = '-1'
this.currentPage = 1
this.total = 0
this.search = val.query.search
}
}
}
③在home页面搜索输入search后成功跳转,路由改变:http://localhost:8080/goodss?search=测试
,但没有打印search
④但在goods页面进行输入search后却能成功打印search
⑤路由配置如下:
{
path: '/index',
name: 'AppIndex',
component: AppIndex,
redirect: '/home',
children: [
{
path: '/home',
name: 'Home',
component: Home
},
{
path: '/goodss',
component: Goodsss
}
其中AppIndex如下(TopNavMenu为其组件):
<template>
<div>
<top-nav-menu></top-nav-menu>
<router-view/>
</div>
</template>
<script>
import TopNavMenu from '../common/TopNavMenu'
export default {
name: 'AppIndex',
components: {TopNavMenu}
}
</script>
<style scoped>
</style>
请问为什么会出现这种问题?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论