@eugene159

ElementUI + Vue3. Почему не работает v-model на форме с чекбоксами? Как подправить?

На этой странице в документации я нашел, как вывести таблицу с чекбоксами:
https://element-plus.org/en-US/component/table.htm...

Я хочу, чтобы строки с отмеченными чекбоксами сохранялись в определенную переменную-массив (resourcesSelected).

Я добавил для el-table директиву v-model="resourcesSelected". Но код не работает. Как будто v-model вообще не существует. Я попробовал для el-table-column добавить v-model. То же самое.
<el-table
  :data="resources"
  v-model="resourcesSelected"
>
<!-- Чекбокс -->
<el-table-column type="selection" width="55" v-model="resourcesSelected">
</el-table-column>

<!-- Id -->
<el-table-column label="id">
  <template #default="scope">
    <a :href="'/update&id=' + scope.row.id" target="_blank">{{scope.row.id}}</a>
  </template>
</el-table-column>
</el-table>

Если вручную вешать обработчики:
<el-table @select-all="itemHandleSelectionAll" @select="itemHandleSelectionChange" @selection-change="selectionChangeHandler" ...

То это работает (функции вызываются. А в них я могу заполнять массив resourcesSelected).

Вопросы.
1. Почему не работает v-model?
2. Как это исправить?
3. Если это нельзя никак исправить, т.к. v-model у таблицы в ElementUI не поддерживается, то как мне узнать, у каких элементов еще v-model не поддерживается? Чтобы понять, когда ошибся я, а когда оно и не должно работать?
  • Вопрос задан
  • 154 просмотра
Пригласить эксперта
Ответы на вопрос 1
@GrayHorse
v-model это не то, что по-умолчанию есть во все компонентах. Это как раз наоборот.

Если у компонента есть v-model, то скорее всего об это будет явно сказано в доках.
Не сказано, значит нет.

> Как это исправить?
> Если вручную вешать обработчики... То это работает

Сам и ответил.
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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