ZBLOG

要在点击“跟进”按钮时传递 record 并控制 FollowUpModal 的弹窗打开,可以按照以下步骤进行:

  1. <template> 中,定义一个响应式变量,用于控制模态框的显示状态。
  2. followUp 函数中,设置该变量为 true,并将要传递的 record 保存到另一个响应式变量中。
  3. 使用条件渲染来显示或隐藏 FollowUpModal

下面是修改后的代码示例:

  1. <template>
  2. <a-table
  3. :columns="columns"
  4. :data-source="data"
  5. :scroll="{
  6. x: columns.reduce((sum, col) => sum + (col.width || 0), 0) > 1800 ? undefined : 'max-content'
  7. }"
  8. :pagination="{
  9. current: currentPage,
  10. pageSize: pageSize,
  11. total: totalRecords,
  12. pageSizeOptions: ['10', '20', '30', '40', '100'],
  13. onShowSizeChange: handlePageSizeChange,
  14. onChange: handlePageChange,
  15. showQuickJumper: true,
  16. showSizeChanger: true,
  17. showTotal: (total, range) => `显示 ${range[0]}~${range[1]} 条记录,共 ${total} 条记录`
  18. }"
  19. >
  20. <template #bodyCell="{ column, record }">
  21. <template v-if="column.key === 'operation'">
  22. <a-button @click="followUp(record)">跟进</a-button>
  23. <!-- 控制 FollowUpModal 的显示 -->
  24. <FollowUpModal v-if="isModalVisible" :record="selectedRecord" @close="handleClose"/>
  25. </template>
  26. </template>
  27. </a-table>
  28. </template>
  29. <script setup>
  30. import { ref } from 'vue';
  31. import FollowUpModal from '../workOrderManager/components/followUpPage.vue'
  32. const columns = ref([]);
  33. const data = ref([]);
  34. const isModalVisible = ref(false);
  35. const selectedRecord = ref(null);
  36. const followUp = (record) => {
  37. selectedRecord.value = record; // 保存当前记录
  38. isModalVisible.value = true; // 显示模态框
  39. };
  40. const handleClose = () => {
  41. isModalVisible.value = false; // 隐藏模态框
  42. };
  43. </script>

修改说明:

  • 状态管理:添加了两个响应式变量 isModalVisibleselectedRecord。前者用于控制模态框的可见性,后者用于存储选中的记录。
  • 事件处理:在按钮上添加了点击事件,当用户点击“跟进”时,将当前行的记录保存到 selectedRecord 中,并将 isModalVisible 设置为 true,以打开模态框。
  • 条件渲染:通过条件渲染 (v-if) 来控制是否渲染 FollowUpModal。同时,我们也假设 FollowUpModal 接受一个名为 record 的 prop,用于展示对应的数据,并且它应该有一个关闭事件(如 @close)以便在关闭时可以更新状态。

确保你根据实际情况调整传入给子组件的 props 和相关功能。


内容由零声教学AI助手提供,问题来源于学员提问

本站部分文章来源于网络,版权归原作者所有,如有侵权请联系站长删除。
转载请注明出处:https://golang.0voice.com/?id=22481

分享:
扫描分享到社交APP
上一篇
下一篇
发表列表
游客 游客
此处应有掌声~
评论列表

还没有评论,快来说点什么吧~

联系我们

在线咨询: 点击这里给我发消息

微信号:3007537140

上班时间: 10:30-22:30

关注我们
x

注册

已经有帐号?