JeecgBoot vue 带参跳转 新页面赋值后删不掉

14 篇文章 2 订阅
本文探讨了在前端开发中,从A页面跳转到B页面并传递参数planCode时遇到的问题。当在B页面的输入框中显示该参数后,无法正常删除输入内容。解决方案是重写查询和重置功能,确保既能赋值也能清除。通过调整代码,实现了既能显示查询参数又能允许用户编辑和删除的输入框功能,提升了用户体验。
摘要由CSDN通过智能技术生成

假设从A页面跳转到B页面,传递参数为planCode

B页面被赋值的input可以显示新值,但是删不掉,进行删除的时候光标常亮不闪;不删除时,光标有规律闪动,这可不行,只能赋值不能删除不能满足需求怎么办呢?

 开始接下来的探索

// A页面
this.$router.push({
    path:'/checkManage/WmsCheckRecordList',
    query:{
        planCode:planCode1
    }
})

// JeecgListMixin   created
// 这里只负责提交时的参数提交,不负责页面展示
if (this.$route.query.planCode!=undefined){
  this.queryParam.planCode = this.planNos = this.$route.query.planCode
  this.searchQuery()
  return false
}

// B页面
<a-col :xl="6" :lg="7" :md="8" :sm="24">
    <a-form-item label="盘点计划编号">
        <a-input placeholder="请输入盘点计划编号" v-model="queryParams.planCode"></a-input>
    </a-form-item>
</a-col>

queryParams:{
    planCode:'',
    checkRecordResult:''
}
// created
if(decodeURI(location.href).split('?')[1] != null){        // 如果url上没有参数时
    // 这里的赋值只负责显示,提交时传不上值
    this.queryParams.planCode = this.$route.query.planCode
}
this.searchQuery()

页面的‘查询’和‘重置’的功能需要重写一下 但是赋值之后不能删除的问题到此就解决啦

肯定还有更方便高效的方法,欢迎大家在评论区讨论

BasicTable页面通常是在前端框架如Vue或React中用于展示数据列表的组件,当你从一个页面跳转到另一个包含BasicTable的页面时,如果需要将搜索条件传递过去并在新的页面继续保留上一次的搜索设置,可以按照以下步骤操作: 1. **保存搜索状态**: 在用户进行搜索后,将搜索关键字、筛选条件等信息存储在一个全局变量、Vuex的状态(如果使用Vue)或者是React的Context(如果使用React)中。 ```javascript // Vue 示例 const store = new Vuex.Store({ state: { searchParams: {} }, // ...其他代码 }); methods: { setSearchParams(newSearchParams) { this.$store.commit('updateSearchParams', newSearchParams); } } // React 示例 const SearchContext = createContext(); function useSearchParams() { const [searchParams, setSearchParams] = useState({}); // ...监听搜索改变并更新searchParams return { setSearchParams }; } ``` 2. **传递搜索参数**: 当从一个页面跳转到另一个页面时,在路由守卫或者导航守卫中,将搜索参数作为查询参数或者通过props传给新的`BasicTable`组件。 ```javascript // Vue Router示例 this.$router.push({ name: 'BasicTablePage', query: { params: this.searchParams } }); // React Router示例 <RouterLink to={{ pathname: '/basic-table', search: `?${JSON.stringify(searchParams)}` }}> Go to Basic Table Page </RouterLink> ``` 3. **接收并应用搜索参数**: 新的`BasicTable`组件接收到参数后,将其解构并更新到组件内部的搜索功能。 ```javascript // Vue 示例 export default { computed: { filteredData() { return this.$store.state.searchParams ? this.data.filter((item) => /* 搜索条件 */ ) : this.data; } } }; // React 示例 function BasicTable({ searchParams }) { const [filteredData, setFilteredData] = useState(data); useEffect(() => { if (searchParams) { setFilteredData(data.filter((item) => /* 搜索条件 */ )); } }, [searchParams]); // ...table渲染逻辑 } ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值