В последнее время я столкнулся с проблемой с таблицей bootstrap-vue и ее элементами. Я сделал таблицу с объектом items. У меня также есть пара переменных, которые я хотел бы включить в элементы таблицы. Я хочу использовать переменные в качестве v-модели входов флажков в шаблоне таблицы для этого слота элемента.
Я попытался поместить переменную как элемент. Переменная просматривалась таблицей, но не была привязана к ней, поэтому любое изменение флажка не отражалось в значениях переменных.
Код, который, как я ожидал, сработает. Таблица с шаблоном и вводом флажка с v-моделью в переменную данных компонента:
<b-table class="settings-integrationsTable" outlined :items="integrationsTableItems()" :fields="print_integrations_fields">
<template v-slot:cell(switch)="data">
<b-form-checkbox type="checkbox"
v-model="data.item.model">
</b-form-checkbox>
</template>
</b-table>
data () {
return {
variable: false
}
}
methods: {
integrationsTableItems () {
return {
{ model: this.variable },
}
}
}
Я хотел бы поместить переменную непосредственно в элементы, как показано выше, и использовать ее и привязать к моей v-модели ввода таблицы.
Мой обходной путь для этой ситуации заключается в том, что вместо прямой переменной мое поле модели элементов представляет собой строковое имя, например. 'переменная', и я создал метод для возврата ее значения. Я использую значение для представления отмеченного состояния флажка, а второй метод меняет его состояние.
<template v-slot:cell(switch)="data">
<b-form-checkbox type="checkbox"
:checked="getIntegrationModel(data.item.model)"
@change="changeIntegrationModel(data.item.model)">
</b-form-checkbox>
</template>
Каким-либо образом сработает моя первая идея? Я могу сделать что-то не так.