Design System

Component usage guide template

Browse Components

rhf

RHF Multiple Combobox

React Hook Form wrapper cho MultipleCombobox với hỗ trợ validation và error handling tích hợp.

1. Import
Import RHFMultipleCombobox component từ design system.
import { RHFMultipleCombobox } from "@/design-system/components/rhf";
2. Props
RHFMultipleCombobox component props.
PropTypeDefault
controlControl<T>--
namePath<T>--
optionsComboboxBaseOption[]--
labelstring | React.ReactNode--
descriptionstring--
requiredbooleanfalse
disabledbooleanfalse
placeholderstringChọn...
showMenuCodebooleantrue
showSelectedCodebooleanfalse
searchPlaceholderstringTìm kiếm...
emptyMessagestringKhông tìm thấy kết quả
requireApplybooleanfalse
cancelTextstringHủy
applyTextstringÁp dụng
limitTagsnumber--
autoResizebooleanfalse
showArrowIconbooleantrue
showClearIconbooleantrue
onSelectedRender(selectedId, selectedOption) => React.ReactNode--
callback(values: (string | number)[], options: TOption[]) => void--
wrapperClassNamestring--
labelClassNamestring--
descriptionClassNamestring--
errorClassNamestring--
3. Usages
Các pattern và cấu hình RHFMultipleCombobox phổ biến.
Chọn phòng ban
import { RHFMultipleCombobox } from "@/design-system/components/rhf";
import { useForm } from "react-hook-form";
import type { ComboboxBaseOption } from "@/design-system/components/ui/single-combobox";

const departments: ComboboxBaseOption[] = [
  { id: '1', code: 'IT', name: 'Công nghệ thông tin' },
  { id: '2', code: 'FIN', name: 'Tài chính' },
  { id: '3', code: 'HR', name: 'Nhân sự' },
];

export function ExampleCombobox() {
  const { control } = useForm({
    defaultValues: {
      departments: [],
    },
  });

  return (
    <RHFMultipleCombobox
      control={control}
      name="departments"
      options={departments}
      label="Phòng ban"
      placeholder="Chọn phòng ban"
    />
  );
}