返回列表 发布新帖

抛收款单功能:通用按钮+hooks代码执行成功后没有自动刷新界面

50 3
发表于 2025-3-27 16:58:57 | 查看全部 阅读模式
问答

紧急程度

已完结

选中单身的一笔数据后,点击抛收款单按钮后有成功抛单,但是画面没有自动刷新,手工点刷新后看抛转状态才是对的,hooks代码如下,请帮忙排查,谢谢

                               
登录/注册后可看大图



                               
登录/注册后可看大图


// 获取表格组件实例
const tableComponent = component.getComponentById('ef0d62fb-9158-41fe-8327-c85d14e68948'); // 表格组件ID

// 获取表格已选中的行数据
const selectedRows = tableComponent.getSelectedRows(); // 获取表格已选中的行数据

// 如果没有选中行则不执行后续逻辑
if (selectedRows.length === 0) {
  return; // 如果没有选中行则不执行后续逻辑
}

// 准备API调用参数
const apiParams = {
  actionId: 'esp_t100.oapi.collection.doc1.data.create', // API Action ID
  parameter: { collection_doc_data: selectedRows.map(row => row.value), is_digiwin_product: 'Y' }, // 将选中行的数据映射为API参数
  businessUnit: options.context.businessUnit, // 从上下文中获取业务单元
  executeContext: options.context // 执行上下文
};

// 调用API
options.utils.espApi.getEspByActionId(apiParams).subscribe(
  (res) => {
    console.log('API调用成功:', res); // API调用成功后的处理逻辑
  },
  (err) => {
    console.error('API调用失败:', err); // API调用失败后的处理逻辑
  }
);

// 触发变更检测
component.markForCheck(); // 触发变更检测以更新视图


最佳答案

查看完整内容

本帖最后由 周云建 于 2025-3-28 17:00 编辑 周云建 发表于 2025-3-28 14:04 可以在 hooks 调用esp 结果 的地方 设置下页面的 抛转状态值 // 获取表格组件实例 id换为自己的 const tableComponent = component.getComponentById('db208770-8754-4b6a-b2b1-21934786e642'); // 获取表格所有选中行的数据 const selectedRows = tableComponent.getSelectedRows(); // 遍历每一行数据 selectedRows.forEach(row => {    ...

评论3

周云建Lv.3 发表于 2025-3-28 14:03:49 | 查看全部
component.markForCheck();

这个 会校验页面数据是否有变更,从当前hooks看 并未操作 所以没有刷新界面
周云建Lv.3 发表于 2025-3-28 14:04:46 | 查看全部
可以在 hooks 调用esp 结果 的地方 设置下页面的 抛转状态值
周云建Lv.3 发表于 2025-3-28 15:04:16 | 查看全部
本帖最后由 周云建 于 2025-3-28 17:00 编辑
周云建 发表于 2025-3-28 14:04
可以在 hooks 调用esp 结果 的地方 设置下页面的 抛转状态值

// 获取表格组件实例 id换为自己的
const tableComponent = component.getComponentById('db208770-8754-4b6a-b2b1-21934786e642');

// 获取表格所有选中行的数据
const selectedRows = tableComponent.getSelectedRows();

// 遍历每一行数据
selectedRows.forEach(row => {
  // 设置A字段的值为新的值 字段 换位自己的 值也是 换成自己的
  row .get('A字段').setValue('新的值');
});

// 手动触发表格组件的变更检测
tableComponent.markForCheck();


大家来答
    热门讨论
    精选文章
    平台技术干货-Web前端水印控件实现
    本文将针对平台如何实现前端水印控件功能进行说明与描述。主要内容包括:水印控件的设
    排错技巧 - 定制页面加载异常,画面空白
     背景说明新进ISV在定制开发时,常会遇到定制部署后,没正常呈现,却不知怎么排
    应用模组维护方法说明
    (本篇会聚焦在如何新增/维护模组及作业, 一步一步的教您该如何处理, 当您设定好模组/
    平台现有能力-hooks-数据重复性检查
    需求背景 ISV目前在使用低代码开发时,经常有一些前端校验的业务功能,以前大多
    平台现有能力-任务卡显隐功能
     需求背景 ISV当使用任务卡详情查询的业务上,待处理的数据和平台引擎的数
    • 关注公众号
    Copyright © 2025 鼎捷数智股份有限公司 版权所有 All Rights Reserved. Powered by Discuz! X5.0
    关灯 在本版发帖
    即将开放
    返回顶部
    快速回复 返回顶部 返回列表