Как передать параметры в SplitButton?
Использую DataTable, для каждой из строк таблицы необходимо добавить столбец с кнопкой с доступным набором действий, для этих целей решил использовать SplitButton
<data-table>
/*Другие столбцы*/
<Column header="Действия" :frozen="frozenColumns" align-frozen="right">
<template #body="{data}">
<split-button
label="Действия"
:model="items"
size="small"
/>
</template>
</Column>
</data-table>
Столкнулся с тем что в используемый компонент нельзя передать параметры, подскажите как в SplitButton передать параметры?
Ответы (1 шт):
Автор решения: Bald
→ Ссылка
Решение нашел здесь
Write a function which takes a parameter (row specific information) and returns items array which is built in this function, so you have row specific information available while you build it. Then bind the function call to the splitbutton model, something like that: [model]="getItems(row)".
Сделал так как советует автор поста, получилось следующее
<data-table>
/*Другие столбцы*/
<Column header="Действия" :frozen="frozenColumns" align-frozen="right">
<template #body="{data}">
<split-button
label="Действия"
:model="getRowActions(data)"
size="small"
/>
</template>
</Column>
</data-table>
methods: {
getRowActions(row){
return [
{label: 'first action', command: () => this.firstActionHandler(row)},
{label: 'second action', command: () => this.secondActionHandler(row)},
]
},
firstActionHandler(row) {
/**/
},
secondActionHandler(row) {
/**/
},
}