vue3.2 antd 使用Select组件的搜索filterOption

1、一定要记得先打印 filterOption 方法的参数出来看数据结构哦,不要盲目复制文档的代码
<a-form-item label="测站编码" v-bind="validateInfos.stationId">
  <a-select
    placeholder="请选择测站编码"
    v-model:value="formData.stationId"
    show-search
    :filterOption="filterOption"
    :getPopupContainer="(triggerNode) => triggerNode.parentNode"
    @select="getDeviceNum"
    :disabled="(actionType != 'a') && (actionType != 'c')"
  >
    <a-select-option
      :value="item.id"
      v-for="item in state.siteCodeList"
      :key="item.id"
    >
      {{ item.stationName }}
    </a-select-option>
  </a-select>
</a-form-item>
const filterOption = (input, option) => {
  console.log(input, option);
  return option.children[0].children.toLowerCase().indexOf(input.toLowerCase()) >= 0;
};

我依然而我竟然 还是觉得你最好

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
可能是因为 resetFields 方法默认只会重置被绑定的表单域,而 modal 中的表单域没有被直接绑定到 Form 上,所以 resetFields 方法无法重置它们。 可以尝试在 modal 的关闭事件中手动调用 resetFields 方法,例如: ```html <template> <div> <a-button @click="showModal">打开 Modal</a-button> <a-modal v-model:visible="visible" @cancel="handleCancel" @ok="handleOk"> <a-form :form="form"> <a-form-item label="姓名" name="name"> <a-input v-model:value="form.name" /> </a-form-item> <a-form-item label="年龄" name="age"> <a-input-number v-model:value="form.age" /> </a-form-item> </a-form> </a-modal> </div> </template> <script> import { defineComponent } from 'vue'; import { Modal, Form, Input, InputNumber } from 'ant-design-vue'; export default defineComponent({ components: { 'a-modal': Modal, 'a-form': Form, 'a-input': Input, 'a-input-number': InputNumber, }, data() { return { visible: false, form: {}, }; }, methods: { showModal() { this.visible = true; }, handleCancel() { this.visible = false; }, handleOk() { this.$refs.form.validate((valid) => { if (valid) { // 提交表单 this.visible = false; } }); }, resetForm() { this.$refs.form.resetFields(); }, }, watch: { visible(visible) { if (!visible) { this.resetForm(); } }, }, }); </script> ``` 在上面的代码中,当 modal 关闭时会调用 `resetForm` 方法手动重置表单域。另外,为了获取 Form 实例,还需要给 Form 组件添加一个 ref 属性,例如 `ref="form"`。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值