Как заставить компонент пользовательского интерфейса реагировать на ограничение бэкэнда? - PullRequest
0 голосов
/ 25 сентября 2018

У меня есть компонент v-switch во внешнем интерфейсе, который управляет частью моей системы.Возможно, что щелчок по этому компоненту вызовет ошибку в серверной части, и в этом случае я бы хотел, чтобы значение v-switch вернулось к тому, что было.

Ошибка исходит от моегоback-end и обрабатывается на компоненте верхнего уровня в моем приложении, показывая сообщение об ошибке, которое пользователь может отклонить.Тем не менее, v-переключатель не сбрасывается.Команда отправляется на сервер, а ошибка выдается и отображается правильно.Регистрация в функции get появляется в консоли, когда я нажимаю на переключатель, и она установлена ​​в false, как я и ожидал.Просто сам переключатель не отражает этого.

Вот мой пример кода:

<template>
  <v-switch v-model="usingUsb" :input-value="usingUsb></v-switch>
</template>

<script>
import {usbFuncs} from '@/mixins/usbFuncs'
export default {
  computed: {
    mixins: [usbFuncs],
    usingUsb: {
      get: function () {
        var v = this.getIsUsingUsb()
        console.log(v)
        return v
      },
      set: function (newValue) {
        this.setIsUsingUsb(0, newValue)
      }
    }
  }
}
</script>

Я пытался переключать 'usingUsb' в setInterval, чтобы периодически устанавливать переключатель, чтоработает очень хорошо.

Кажется, это было бы обычным делом.Может ли кто-нибудь помочь мне понять, почему коммутатор не отображает значение, возвращаемое геттером?

Спасибо!

...