当前位置:首页 > 前端教程

elementui auto

2026-01-14 21:07:02前端教程

Element UI AutoComplete 组件

Element UI 的 AutoComplete 组件是一个输入框的自动完成功能,用户输入时会出现下拉建议。适用于需要快速输入或搜索的场景。

基本用法

通过 v-model 绑定输入值,fetch-suggestions 属性设置获取建议的方法。

<el-autocomplete
  v-model="state"
  :fetch-suggestions="querySearch"
  placeholder="请输入内容"
  @select="handleSelect"
></el-autocomplete>
data() {
  return {
    restaurants: [],
    state: ''
  }
},
methods: {
  querySearch(queryString, cb) {
    var restaurants = this.restaurants;
    var results = queryString ? restaurants.filter(this.createFilter(queryString)) : restaurants;
    cb(results);
  },
  createFilter(queryString) {
    return (restaurant) => {
      return (restaurant.value.toLowerCase().indexOf(queryString.toLowerCase()) === 0);
    };
  },
  handleSelect(item) {
    console.log(item);
  }
}

远程搜索

结合远程接口实现搜索建议。

<el-autocomplete
  v-model="state"
  :fetch-suggestions="querySearchAsync"
  placeholder="请输入内容"
  @select="handleSelect"
></el-autocomplete>
methods: {
  querySearchAsync(queryString, cb) {
    axios.get('/api/search', { params: { query: queryString } })
      .then(response => {
        cb(response.data);
      });
  }
}

自定义模板

通过 scoped slot 自定义下拉项的显示内容。

<el-autocomplete
  v-model="state"
  :fetch-suggestions="querySearch"
  placeholder="请输入内容"
>
  <template #default="{ item }">
    <div class="name">{{ item.value }}</div>
    <span class="addr">{{ item.address }}</span>
  </template>
</el-autocomplete>

禁用状态

设置 disabled 属性可以禁用自动完成。

<el-autocomplete
  v-model="state"
  :fetch-suggestions="querySearch"
  placeholder="请输入内容"
  disabled
></el-autocomplete>

清除按钮

添加 clearable 属性可显示清除按钮。

<el-autocomplete
  v-model="state"
  :fetch-suggestions="querySearch"
  placeholder="请输入内容"
  clearable
></el-autocomplete>

事件

常用事件包括 select(选中建议项时触发)和 change(输入值变化时触发)。

<el-autocomplete
  v-model="state"
  :fetch-suggestions="querySearch"
  placeholder="请输入内容"
  @select="handleSelect"
  @change="handleChange"
></el-autocomplete>

属性

主要属性包括 value-key(指定建议对象的键名)、debounce(输入去抖延迟)等。

elementui auto

<el-autocomplete
  v-model="state"
  :fetch-suggestions="querySearch"
  placeholder="请输入内容"
  value-key="name"
  :debounce="300"
></el-autocomplete>

以上是 Element UI AutoComplete 组件的常见用法和配置选项,可以根据实际需求进行调整。

标签: elementuiauto
分享给朋友:

相关文章

yarn elementui

yarn elementui

安装 Element UI 与 Yarn Element UI 是一个基于 Vue.js 的组件库,使用 Yarn 作为包管理工具可以快速安装和集成。以下是具体方法: 确保已安装 Yarn 和 Vu…

elementui license

elementui license

ElementUI 的许可证信息 ElementUI 是一款基于 Vue.js 的组件库,其许可证采用 MIT License。以下是关键点: MIT License 是一种宽松的开源许可证,允许用…

elementui open=

elementui open=

ElementUI Open 方法详解 ElementUI 是一个基于 Vue.js 的组件库,提供了丰富的 UI 组件。open 方法通常用于打开对话框、下拉菜单等交互组件。 Dialog 组件的…

elementui flex

elementui flex

以下是关于 Element UI 中 Flex 布局的详细说明和使用方法: Flex 布局基础 Element UI 的 Flex 布局基于 CSS Flexbox 模型,通过 el-row 和 e…

elementui范围

elementui范围

ElementUI 范围选择功能 ElementUI 提供了多种范围选择组件,适用于日期、时间、数值等场景。以下是常见的范围选择组件及其使用方法。 日期范围选择 使用 el-date-picker…

elementui标签

elementui标签

ElementUI 标签的基本使用 ElementUI 提供 <el-tag> 组件用于展示标签信息,支持多种样式和交互功能。 基础用法 通过 type 属性设置标签类型,可选值包括…