@riksisharakshas

Как отследить множество событий у компонента?

Есть Root элемент, у него есть компонент, который генерирует множество событий и меняет состояние Rootа:

<user-form
  v-bind:formprops='userProps'
  @is-active="userProps.isActive = !userProps.isActive"
  @first-name-input="userProps.firstName = $event"
  @last-name-input="userProps.lastName = $event"
></user-form>

Может я что-то не так делаю, но куча @some-event напрягает, знающий человек мельком сказал, что можно как-то, грубо говоря, весь изменяемый объект наверх посылать, но я ничего не нашел, поделитесь статейкой или вашими решениями.
  • Вопрос задан
  • 133 просмотра
Решения вопроса 1
0xD34F
@0xD34F Куратор тега Vue.js
можно как-то, грубо говоря, весь изменяемый объект наверх посылать

Можно.

Или пару ключ-значение. В этом случае обработчик в родительском компоненте останется один, и выглядеть будет примерно так:

@change="onChange"

methods: {
  onChange(e) {
    this.userProps[e.name] = e.val;
  }
}
Ответ написан
Пригласить эксперта
Ответы на вопрос 2
Sanasol
@Sanasol
нельзя просто так взять и загуглить ошибку
vuex для этого есть
Ответ написан
Комментировать
evgensenin
@evgensenin
Yii2 || Laravel, vue & nuxt
Там где вы эмитите события вида first-name-input, добавьте еще change и правда передавайте сразу весь объект наверх. так многие формы делают
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы