Я использую vue-select в своем приложении и пытаюсь предотвратить запуск обработчика событий, когда значения по умолчанию сначала загружаются во вход vue-select.
Компонент выглядит так:
<v-select
multiple
v-model="product.recommended_accessories"
label="name"
:options="accessoryOptions"
@input="saveProduct"
@search="onAccessorySearch">
<template slot="option" slot-scope="option">
<h4>{{ option.name }}</h4>
<h5>{{ option.sku }}</h5>
</template>
</v-select>
Как видите, я хочу сохранить продукт, когда пользователь изменяет значения в этом множественном выборе. Работает нормально, но с одной проблемой.
Значение выбора привязано к данным product.recommended_accessories
. В другом месте приложения продукт загружается с сервера, который включает атрибут recommended_accessories
. Затем загрузка продукта запускает saveProduct
для вызова, поскольку vue-select устанавливает предварительно выбранные параметры для ввода, что, по-видимому, запускает событие @input
.
Есть ли что-нибудь вокруг этого? Может, здесь я допустил какую-то дизайнерскую ошибку. Или, может быть, есть ловушка, которую я должен использовать для привязки обработчика событий или для установки какого-то флага, указывающего, что продукт находится в процессе загрузки и сохранение продукта не должно происходить.
Я просто стараюсь не сохранять товар сразу после загрузки без причины.