ZBLOG

要实现你的需求,我们可以通过对 isCustomerAssociatedisEditing 这两个状态的判断来动态控制产品名称和借据号的输入框。这是需要在UI上显示输入框而不是选择框的逻辑。

以下是你可以调整的代码段,以支持这些新要求:

更新后的模板

  1. <template>
  2. <a-col :span="12">
  3. <a-form-item label="身份证号">
  4. <a-row>
  5. <a-col :span="isCustomerAssociated ? 24 : 16">
  6. <a-input
  7. v-model:value="formModal.ident"
  8. placeholder="请输入身份证号"
  9. :disabled="isEditing"
  10. />
  11. </a-col>
  12. <a-col
  13. :span="6"
  14. style="padding-left: 10px"
  15. v-if="!isCustomerAssociated && modalType === 'add'"
  16. >
  17. <a-button
  18. class="margin-right-10 button-light-blue"
  19. type="primary"
  20. @click="handleAssociateCustomer"
  21. >
  22. 关联客户
  23. </a-button>
  24. </a-col>
  25. </a-row>
  26. </a-form-item>
  27. </a-col>
  28. <a-row v-if="isCustomerAssociated">
  29. <a-col :span="12">
  30. <a-form-item label="产品名称" style="width: 250%; margin-left: -130px">
  31. <template v-if="isEditing || modalType === 'add'">
  32. <!-- 可手动输入 -->
  33. <a-input
  34. v-model:value="formModal.productNameInput"
  35. placeholder="请输入产品名称(可手动输入)"
  36. />
  37. </template>
  38. <template v-else>
  39. <!-- 可选择 -->
  40. <a-select
  41. v-model:value="formModal.productName"
  42. mode="multiple"
  43. placeholder="请选择产品名称"
  44. :options="productOptions"
  45. :disabled="isEditing"
  46. />
  47. </template>
  48. </a-form-item>
  49. </a-col>
  50. </a-row>
  51. <a-row v-if="isCustomerAssociated">
  52. <a-col :span="12">
  53. <a-form-item label="借据号" style="width: 250%; margin-left: -130px">
  54. <template v-if="isEditing || modalType === 'add'">
  55. <!-- 可手动输入 -->
  56. <a-input
  57. v-model:value "formModal.loanInfoCodeInput"
  58. placeholder "请输入借据号(可手动输入)"
  59. />
  60. </template>
  61. <template v-else>
  62. <!-- 可选择 -->
  63. < a-select
  64. v-model:value = "formModal.loanInfoCode"
  65. mode = "multiple"
  66. placeholder = "请选择借据号"
  67. :options = "loanOptions"
  68. :disabled = "!formModal.productName || formModal.productName.length === 0 || isEditing"
  69. />
  70. </template>
  71. </ a-form-item >
  72. </ a-col >
  73. </ a-row >
  74. </ template >
  75. <script setup>
  76. // Importing Vue and other necessary modules remains unchanged
  77. // Define additional state variables for manual input fields
  78. const formModal = ref({
  79. ident: '',
  80. productName: [],
  81. loanInfoCode: [],
  82. customerName: '',
  83. phoneNumber: '',
  84. productNameInput: '', // 新增字段,用于存储手动输入的产品名称
  85. loanInfoCodeInput: '' // 新增字段,用于存储手动输入的借据号
  86. });
  87. // The rest of your script remains unchanged...

修改点说明:

  1. 新增字段:为 formModal 中新增了 productNameInputloanInfoCodeInput 字段,分别用于存储用户手动输入的产品名称和借据号。

  2. 条件渲染:使用了 <template> 标签,根据 modalTypeisEditing 的值判断显示哪个组件。对于新增和编辑时,如果是在可编辑模式,则展示文本框供用户手动输入;如果是在查看模式下,则展示选择器。

  3. 绑定修改:将新的数据模型与UI元素进行绑定,这样能够保证用户的每次更改都会反映在数据模型中。

这样,当你在添加或编辑时会根据不同条件展示相应的组件,使得用户体验更佳。如果你有其他特定需求,欢迎继续提问!


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

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

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

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

联系我们

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

微信号:3007537140

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

关注我们
x

注册

已经有帐号?