autocomplete
With trigger button
With trigger button
Загрузка превью…
src/autocomplete/c-autocomplete-6.vue
<!--
Кейс проверяет только закрытое состояние (см. docs/PORTING.md §5).
То же расхождение API (`items`/`itemToStringValue`), что и в
c-autocomplete-5.vue.
-->
<script setup lang="ts">
import { computed, ref } from "vue"
import { Autocomplete, AutocompleteContent, AutocompleteEmpty, AutocompleteInput, AutocompleteItem, AutocompleteList } from "@/components/reui/autocomplete"
interface Item {
id: string
value: string
}
const items: Item[] = [
{ id: "t1", value: "feature" },
{ id: "t2", value: "fix" },
{ id: "t3", value: "bug" },
{ id: "t4", value: "docs" },
{ id: "t5", value: "internal" },
{ id: "t6", value: "mobile" },
{ id: "c-accordion", value: "component: accordion" },
{ id: "c-alert-dialog", value: "component: alert dialog" },
{ id: "c-autocomplete", value: "component: autocomplete" },
{ id: "c-avatar", value: "component: avatar" },
]
const value = ref("")
const filteredItems = computed(() =>
items.filter((item) => item.value.toLowerCase().includes(value.value.toLowerCase()))
)
</script>
<template>
<div class="w-full max-w-xs">
<Autocomplete v-model="value">
<AutocompleteInput placeholder="e.g. feature" show-trigger />
<AutocompleteContent>
<AutocompleteEmpty>No items found.</AutocompleteEmpty>
<AutocompleteList>
<AutocompleteItem v-for="item in filteredItems" :key="item.id" :value="item.value">
{{ item.value }}
</AutocompleteItem>
</AutocompleteList>
</AutocompleteContent>
</Autocomplete>
</div>
</template>
Установка
npx shadcn-vue@latest add https://revueui.rootapi.dev/r/c-autocomplete-6.jsonЗависимости реестра
Источник: порт из ReUI (Keenthemes, MIT)