Vue компонент реквизита синхронизации - PullRequest
0 голосов
/ 04 сентября 2018

Мой компонент vue имеет два реквизита a и b (a для v-модели). В компоненте мне нужно сделать несколько логик, когда оба a и b изменились, на самом деле a и b будут всегда изменяться вместе. Но я не хочу объединять их в один объект. Если использовать watch, я должен обработать соответствующие изменения. Как получить возможность, когда обе переменные изменились?

Ответы [ 2 ]

0 голосов
/ 04 сентября 2018
export default {
  props: ['a', 'b'],
  computed: {
    abHandler () { return {a: this.a, b: this.b } }
  },
  watch: {
    abHandler () {
      console.log('a or b has changed')
    }
  }
}
0 голосов
/ 04 сентября 2018

Вы можете использовать b в вычисленном

Я предполагаю, что a равно firstName & lastName, а b равно fullName.

Вы можете сделать что-то вроде этого

<template>
  <div>
    <input type="text" v-model="firstName">
    <input type="text" v-model="lastName">
    <span>{{ fullName }}</span>
  </div>
</template>

<script>
export default {
    data () {
        return {
            firstName: '',
            lastName: '',
        }
    },
    computed: {
        fullName () {
            return this.firstName + ' ' + this.lastName
        },
    },
}
</script>
...