iview中带搜索功能的select选择器

  <Select
      @on-query-change="changQuery"
      transfer
      v-model="userId"
      filterable
      remote
      :remote-method="remoteMethod"
      :loading="loading"
      style="width: 200px"
    >
      <Option
        v-for="item in defaultList"
        :value="item.userId"
        :key="item.userId"
      >
        {{ item.userName }}
      </Option>
    </Select>
<script>
export default {
  data() {
    return {
      defaultList: [
        { userId: "01", userName: "aaa" },
        { userId: "02", userName: "bbb" },
        { userId: "03", userName: "abc" },
        { userId: "04", userName: "dbc" },
        { userId: "05", userName: "ddd" },
      ],
      searchList: [
        { userId: "06", userName: "aae" },
        { userId: "07", userName: "bbq" },
        { userId: "08", userName: "cce" },
        { userId: "09", userName: "mmr" },
        { userId: "10", userName: "you" },
      ],
      userId: "",
      loading: false,
    };
  },
  methods: {
    remoteMethod(query) {
      // console.log(query
      if (query != "") {
        this.loading = true;
        setTimeout(() => {
          this.loading = false;
          this.defaultList = [];
          for (var i = 0; i < this.searchList.length; i++) {
            if (this.searchList[i].userName.includes(query)) {
              this.defaultList.push(this.searchList[i]);
            }
          }
        }, 300);
      }
    },
    changQuery(query) {
      // console.log(query);
      if (query == "") {
        this.loading = true;
        setTimeout(() => {
          this.loading = false;
          this.defaultList = [
            { userId: "1", userName: "mark" },
            { userId: "2", userName: "xwj" },
            { userId: "3", userName: "tim" },
            { userId: "4", userName: "tom" },
            { userId: "5", userName: "jerry" },
          ];
        }, 300);
      }
    },
  },
};
</script>
  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值