ZBLOG

要在点击“跟进”按钮时展示一个弹窗并切换到一个新的 Vue 页面,你可以使用 Vue Router 来实现页面切换,并结合 Ant Design Vue 的 Modal 组件来显示弹窗。以下是一个示例代码,演示如何完成这一需求。

首先,确保你的项目中已经安装了 vue-routerant-design-vue

1. 创建新页面

假设你有一个新页面叫做 FollowUp.vue

  1. <!-- FollowUp.vue -->
  2. <template>
  3. <div>
  4. <h2>跟进记录</h2>
  5. <!-- 在这里添加更多内容 -->
  6. </div>
  7. </template>
  8. <script setup>
  9. // 可以在这里添加逻辑或数据
  10. </script>

2. 配置路由

在你的路由配置文件中(通常是 router/index.js 或类似的文件),添加新的路由:

  1. import { createRouter, createWebHistory } from 'vue-router';
  2. import FollowUp from '@/components/FollowUp.vue'; // 根据实际路径引入
  3. const routes = [
  4. // 其他路由...
  5. {
  6. path: '/follow-up',
  7. component: FollowUp,
  8. },
  9. ];
  10. const router = createRouter({
  11. history: createWebHistory(),
  12. routes,
  13. });
  14. export default router;

3. 修改原表格组件

在原有表格组件中修改“跟进”按钮的事件处理,以便在点击后打开弹窗或跳转到新页面。

  1. <template>
  2. <a-table ...>
  3. <template #bodyCell="{ column, record }">
  4. <template v-if="column.key === 'operation'">
  5. <a-button @click="openModal('edit', record)">编辑</a-button>
  6. </template>
  7. <template v-if="column.key === 'operation'">
  8. <a-button @click="handleFollowUp(record)">跟进</a-button> <!-- 添加 click 事件 -->
  9. </template>
  10. <template v-if="column.key === 'operation'">
  11. <a-button @click="complete(record)">完成</a-button>
  12. </template>
  13. </template>
  14. </a-table>
  15. <!-- Modal 弹窗 -->
  16. <a-modal v-model:visible="isModalVisible" title="跟进" @ok="handleOk" @cancel="handleCancel">
  17. <p>您要对{{ followRecord }}进行跟进吗?</p> <!-- 显示选择的记录 -->
  18. <!-- 可以在这里添加更多输入字段等内容 -->
  19. </a-modal>
  20. </template>
  21. <script setup>
  22. import { ref } from 'vue';
  23. import { useRouter } from 'vue-router';
  24. import { Table, Button, Modal } from 'ant-design-vue';
  25. const columns = ref([]);
  26. const data = ref([]);
  27. const currentPage = ref(1);
  28. const pageSize = ref(10);
  29. const totalRecords = ref(100);
  30. const isModalVisible = ref(false); // 控制 modal 的显隐
  31. const followRecord = ref(null); // 用于保存需要跟进的记录
  32. const router = useRouter();
  33. const openModal = (action, record) => {
  34. console.log(action, record);
  35. };
  36. const handleFollowUp = (record) => {
  37. followRecord.value = record; // 保存当前记录
  38. isModalVisible.value = true; // 打开弹窗
  39. };
  40. const handleOk = () => {
  41. // 确认后的操作,比如:可能想导航到另一个页面:
  42. router.push({ path: '/follow-up' });
  43. isModalVisible.value = false; // 隐藏弹窗
  44. };
  45. const handleCancel = () => {
  46. isModalVisible.value = false; // 隐藏弹窗
  47. };
  48. const complete = (record) => {
  49. console.log('完成', record);
  50. };
  51. </script>
  52. <style scoped>
  53. /* 添加相关样式 */
  54. </style>

总结

在上面的代码中,点击“跟进”按钮将会打开一个 Ant Design 的 Modal 弹窗。在确认后,用户会被导航到 /follow-up 路径下的新页面。同时,如果用户取消操作,则仅关闭该弹窗,而不进行任何导航。

请根据您的需求进一步调整上述代码。如果有任何问题或者需要更详细的帮助,请告诉我!


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

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

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

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

联系我们

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

微信号:3007537140

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

关注我们
x

注册

已经有帐号?