$ error no mutate in Vuelidate checkbox - PullRequest
       3

$ error no mutate in Vuelidate checkbox

2 голосов
/ 05 марта 2019

Я пытаюсь подтвердить и у меня возникла проблема, так как я хочу проверить, есть ли у моего флажка $error, форма не будет отправлена.После вывода $ v я получаю следующее, но оно не меняется при нажатии.В основном, у меня есть большая форма, и если для нее установлена ​​ошибка $ true, она не будет отправлена.Я хочу добавить $error к флажку. Код здесь

"form": {
    "checkbox": {
      "required": true,
      "$model": false,
      "$invalid": false,
      "$dirty": true,
      "$anyDirty": true,
      "$error": false,
      "$anyError": false,
      "$pending": false,
      "$params": {
        "required": {
          "type": "required"
        }
      }
    }

Ответы [ 2 ]

0 голосов
/ 25 апреля 2019

Вам необходимо создать собственный валидатор, подобный этому.

data(){
  checkbox_items: [],
  options: [
    { id: 1, label: 'label1' }
    { id: 2, label: 'label2' }
    { id: 3, label: 'label3' }
  ]
},
validations: {
  checkbox_items: {
    checked: value => {
      return value.length
    }
  }
}

Шаблон:

<div v-for="item in options" :key="item.id">
  <input type="checkbox"
    :id="'item.id"
    :class="{ error: $v.checkbox_items.$error }"
    :value="item.id"
    v-model="checkbox_items"
    @blur="$v.checkbox_items.$touch()">
  <label :for="'item.id">{{ item.label }}</label>
</div>
0 голосов
/ 05 марта 2019

С флажком необходимо использовать sameAs

  validations: {
    form: {
      checkbox: {
        sameAs: sameAs( () => true )
      }
    }
  }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...