new Vue({
el: "#app",
data() {
return {
table: {
fields: ['heading1', 'heading2', 'heading3'],
perPage: 30,
currentPage: 1,
isBusy: false
},
products: [{
heading1: 'table cell',
heading2: 'table cell',
heading3: 'table cell'
},
{
heading1: 'table cell',
heading2: 'table cell',
heading3: 'table cell'
},
{
heading1: 'table cell',
heading2: 'table cell',
heading3: 'table cell'
},
{
heading1: 'table cell',
heading2: 'table cell',
heading3: 'table cell'
},
{
heading1: 'table cell',
heading2: 'table cell',
heading3: 'table cell'
},
{
heading1: 'table cell',
heading2: 'table cell',
heading3: 'table cell'
},
{
heading1: 'table cell',
heading2: 'table cell',
heading3: 'table cell'
},
{
heading1: 'table cell',
heading2: 'table cell',
heading3: 'table cell'
},
{
heading1: 'table cell',
heading2: 'table cell',
heading3: 'table cell'
},
{
heading1: 'table cell',
heading2: 'table cell',
heading3: 'table cell'
},
{
heading1: 'table cell',
heading2: 'table cell',
heading3: 'table cell'
},
{
heading1: 'table cell',
heading2: 'table cell',
heading3: 'table cell'
}
]
}
}
});
<link type="text/css" rel="stylesheet" href="https://unpkg.com/bootstrap@4.5.3/dist/css/bootstrap.min.css" />
<link type="text/css" rel="stylesheet" href="https://unpkg.com/bootstrap-vue@2.21.2/dist/bootstrap-vue.css" />
<script src="https://unpkg.com/vue@2.6.12/dist/vue.min.js"></script>
<script src="https://unpkg.com/bootstrap-vue@2.21.2/dist/bootstrap-vue.min.js"></script>
<div id="app">
<div class="card">
<div class="card-body">
<h2 class="card-title text-center">PRODUCTS</h2>
<div class="row">
<div class="col-12" style="height: 350px;">
<b-table sticky-header="200px" :items="products" :fields="table.fields" :per-page="table.perPage" :current-page="table.currentPage" :busy="table.isBusy" head-variant="light" responsive>
<template #cell(actions)="row">
<b-button
size="sm"
@click="addToOrder(row.item, row.index, $event.target)"
class="mr-1"
>
Add
</b-button>
</template>
</b-table>
</div>
</div>
</div>
</div>
</div>