Skip to content

TypedMultipleDropdownComponent<T>

A multi-select dropdown component.

You can add this component using SettingEx.addTypedMultipleDropdown.

In order to add the styles for the component, use initPluginContext in your plugin’s onload() function.

Alternatively, you can copy styles from https://github.com/mnaoumov/obsidian-dev-utils/releases/latest/download/styles.css.

Import:

import { TypedMultipleDropdownComponent } from 'obsidian-dev-utils/obsidian/setting-components/typed-multiple-dropdown-component';

Signature:

export class TypedMultipleDropdownComponent<T> extends ValueComponent<readonly T[]> implements ValidatorComponent, ValueComponentWithChangeTracking<readonly T[]>

Extends: ValueComponent<readonly T[]>

Implements: ValidatorComponent, ValueComponentWithChangeTracking<readonly T[]>

Constructor

new TypedMultipleDropdownComponent(containerEl: HTMLElement)

Creates a new multiple dropdown component.

Properties

PropertyTypeDescription
multipleDropdownComponentMultipleDropdownComponentThe inner multiple dropdown component.
validatorElValidatorElementA validator element of the component.
(Inherited from ValidatorComponent)
valuesT[]The list of selectable option values, indexed by their position in the dropdown.

Methods

MethodReturnsDescription
addOption(value, display)thisAdds an option to the dropdown.
addOptions(options)thisAdds multiple options to the dropdown.
getValue()readonly T[]Gets the value of the component.
onChange(callback)thisSets the callback function to be called when the component is changed.
onChange(callback)thisSets a callback function to be called when the value of the component changes.
(Inherited from ValueComponentWithChangeTracking)
setDisabled(disabled)thisSets the disabled state of the component.
setValue(value)thisSets the value of the component.
simulateChange__()voidSimulate a change event.

Links to this page: