Так что я использую Bootstrap Vue
с этим тестовым приложением. Я пытаюсь изменить вариант ячейки таблицы в зависимости от ее значения. К сожалению, параметр варианта не будет принимать функцию, поэтому у меня нет идей, как этого добиться.
Это мой код:
var app = new Vue({
el: '#app',
data: {
items: [], //Will be populated through AJAX
fields: [
{
key: 'Vendedor',
label: 'Vendedor'
},
{
key: 'OBJETIVO',
label: 'Objetivo',
formatter: (value) => { return parseFloat(value).toFixed(2)},
variant: estiloObjetivo //THIS IS NOT WORKING
}
]
},
methods: {
Cargar: function () {
var salesperson = getCookie('salespersonCode');
var url_servicio = 'http://MywebService/';
var self = this;
$.ajax({
type: 'GET',
url: url_servicio + 'ventas/' + salesperson,
dataType: "json", // data type of response
success: function(data){
self.items = data
}
});
},
estiloObjetivo (value) {
if value > 0 //I need my cell variant to change depeding on this value
return 'danger'
else
return 'success'
}
}
})
Это моя часть HTML:
<div id="app">
<button v-on:click="Cargar">Cargar</button>
<b-table striped hover :fields="fields" :items="items"></b-table>
</div>
Есть какие-нибудь идеи о том, как динамически стилизовать ячейку Bootstrap-vue?
Это то, как это делается в документах, на самом деле оно устанавливается в массиве "items", но как это полезно в тех случаях, как мой, когда я получаю данные из веб-службы ?:
{
salesperson: 'John',
Objetivo: 2000,
_cellVariants: { salesperson: 'success', Objetivo: 'danger'}
},
Итак, я думаю, что мне нужен способ установить необходимое мне значение - установить параметр _cellVariants
каждого элемента в массиве 'items'.