保存按钮点击后列表数据未更新,问题可能出在数据更新机制上。 下图显示了问题:
save() 函数在调用 api.SetPortOut() 后,并未正确更新列表数据。 原因在于 portdata.tabledata 数组没有被清空,而是直接添加了新数据,导致数据重复或覆盖不完整。
解决方法:在 save() 函数中,先清空 portdata.tabledata 数组,然后重新调用 GetSerID() 函数获取并更新列表数据。 修改后的 save() 函数如下:
async function save() { const data = { port_id: Number(sessionStorage.getItem('lanPortId')), state: 1, kcn_freq: Number(INS.input_kcn), inspva_freq: Number(INS.input_inspva), inspvax_freq: Number(INS.input_inspvax), bestpos_freq: Number(INS.input_bestpos), gga_freq: Number(GNSS.input_gga), rmc_freq: Number(GNSS.input_rmc), dop_freq: Number(GNSS.input_dop), gsa_freq: Number(GNSS.input_gsa), gsv_freq: Number(GNSS.input_gsv), heading_freq: Number(GNSS.input_heading), zda_freq: Number(GNSS.input_zda), gst_freq: Number(GNSS.input_gst), rawimu_freq: Number(RAW.input_rawimu), imudataa_freq: Number(RAW.input_imudataa), sta_freq: Number(OTHER.input_sta), dev_freq: Number(OTHER.input_dev), }; const SetData = await api.SetPortOut(data); const { data: res } = SetData; if (res.error_code === 0) { portdata.tabledata = []; // 清空数组 await GetSerID(); // 重新获取数据并更新列表 ElMessage({ message: res.msg, type: 'success', showClose: true }); } else { ElMessage({ message: res.msg, type: 'error', showClose: true }); } }
此修改确保了在保存操作成功后,列表数据会先被清空,再重新从服务器获取并更新,从而避免数据重复或不一致的问题。 请确保 GetSerID() 函数正确地将获取到的数据赋值给 portdata.tabledata。 如果问题仍然存在,请检查 GetSerID() 函数的实现逻辑。
以上就是点击保存后列表数据未更新,是什么原因导致的?的详细内容,更多请关注php中文网其它相关文章!
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号