---
url: "https://vueda.dev/v3/reference/api/vue/FilterChip.md"
title: "FilterChip"
---

# FilterChip

## Overview

Renders a single active filter as a removable pill. The label segment shows
the field name and its current value and opens the field's edit form in a
popover; the trailing segment removes the filter. The chip resolves choice
values to their human labels via [useModelChoices](/v3/reference/api/js/use/useModelChoices/functions/useModelChoices.md), and turns
destructive when the server rejected the value.

Theme entry: [FilterChip](/v3/reference/theming/keys/FilterChip.md)

## Props

| Name | Type | Required | Default | Description |
| --- | --- | --- | --- | --- |
| <span id="prop-iconOverride">iconOverride</span> | `Object` |  | `null` | A partial icon registry (`{ [componentName]: { [iconName]: { component, props } } }`) merged with inherited and default icon entries; scopes icon overrides to this component and its descendants. |
| <span id="prop-themeOverride">themeOverride</span> | `Object` |  | `null` | A partial ThemeObject keyed by component name, merged over this component's theme and provided to descendants. |
| <span id="prop-filter">filter</span> | `object` | yes |  | The active filter entry to render: `{ field, value, range, param }`. |
| <span id="prop-filterDetails">filterDetails</span> | `object` | yes |  | Filter configuration for this field (label, choices, typeFilter, lookupExprs, suffixes). |
| <span id="prop-query">query</span> | `object` |  | `{}` | Current URL query, forwarded to the edit form so it seeds from the active value. |
| <span id="prop-errored">errored</span> | `boolean` |  | `false` | When true, the server rejected this filter's value; the chip renders destructive. |

## Slots

### `slot` {#slot-slot}

Scoped slot.

## Events

### `hide-filter-form` {#event-hide-filter-form}

## Source

`client/lib/form/filter/FilterChip.vue`
