element-ui中autocomplete的使用(vue3)

1. 效果展示:

element-ui中autocomplete的使用(vue3)_第1张图片

2. 代码:

html部分:

<el-autocomplete
    v-model.trim="state.groupName"
    :fetch-suggestions="querySearchGroup"
    :clearable="true"
    placeholder="请输入"
    :trigger-on-focus="false"
    @select="handleGroup"
  >

ts部分:

 let state = reactive({
    // 分组名称
    groupName: ''
  })

  // 按需求自己配置
  interface GroupItem {
     value: string
   }
   // 获取名称
   const groupNameArr = ref<GroupItem[]>([])
   const querySearchGroup = (queryString: string, cb: any) => {
     const results = queryString
       ? groupNameArr.value.filter(createFilter(queryString)) // 选择模糊匹配还是精确匹配
       : groupNameArr.value
     cb(results)
   }
   // 模糊(按需求自选)
    const createFilter = (queryString: string) => {
      return (item: any) => {
        return item.value.indexOf(queryString) === 0
      }
    }
   // 精确(按需求自选)
    const createFilterNum = (queryString: string) => {
      return (item: any) => {
        return item.value == queryString
      }
    }
	const handleGroup = (item: any) => {
      console.log(item)
    }

	onMounted(() => {
	  // 根据需求获取数据
	  groupNameArr.value = groupArr
	}

你可能感兴趣的:(vue,elementui)