2
0
mirror of https://github.com/tenrok/vue-select.git synced 2026-05-17 02:29:37 +03:00
Files
vue-select/docs/api/events.md
T
Alexander Karlstad 94549ff903 docs: Add search event to documentation (#1342)
* Add search event to documentation

* Fix jsdoc for other event examples

* Add toggleLoading param to documentation

* Update events.md

Co-authored-by: Jeff Sagal <sagalbot@gmail.com>
2021-07-22 13:35:07 -07:00

2.7 KiB

input

Triggered when the selected value changes. Used internally for v-model.

/**
 * @param {Object|String} val - selected option.
 */
this.$emit("input", val);

open

Triggered when the dropdown is open.

this.$emit("open");

close

Triggered when the dropdown is closed.

this.$emit("close");

option:selecting

Triggered after an option has been selected, before updating internal state.

this.$emit("option:selecting", selectedOption);

option:selected

Triggered when an option has been selected, after updating internal state.

this.$emit("option:selected", selectedOption);

option:deselecting

Triggered when an option has been deselected, before updating internal state.

this.$emit("option:deselecting", selectedOption);

option:deselected

Triggered when an option has been deselected, after updating internal state.

this.$emit("option:deselected", deselectedOption);

option:created

Triggered when taggable is true and a new option has been created.

/**
 * @param {Object} newOption - created option
 */
this.$emit("option:created", newOption);

Anytime the search string changes, emit the 'search' event. The event is passed with two parameters: the search string, and a function that accepts a boolean parameter to toggle the loading state.

See the AJAX Guide for a complete example.

/**
 * @param {String} searchString - the search string
 * @param {Function} toggleLoading - function to toggle loading state, accepts true or false boolean
 */
this.$emit('search', this.search, this.toggleLoading);
<!-- example usage -->
<v-select
    @search="(search, loading) => { 
      loading(true)
      fetchOptions(search).then(() => loading(false))
    }"
/>

search:blur

Triggered when the text input loses focus. The dropdown will close immediately before this event is triggered.

this.$emit("search:blur");

search:focus

Triggered when the text input gains focus. The dropdown will open immediately before this event is triggered.

this.$emit("search:focus");

Triggered when the search text changes.

/**
 * Anytime the search string changes, emit the
 * 'search' event. The event is passed with two
 * parameters: the search string, and a function
 * that accepts a boolean parameter to toggle the
 * loading state.
 *
 * @emits search
 */
this.$emit('search', newSearchString, toggleLoading);