【发布时间】:2019-07-03 17:42:30
【问题描述】:
我有一个使用 Bootstrap-vue 从数据库中提取信息的表。数据库有一个名为“day”的字段,它存储“mon”、“tue”、“wed”等字符串值。我希望能够按天按此列对表进行排序,而不是按字母顺序。有没有办法做到这一点?
我对 Vue 和 Bootstrap Vue 还是很陌生。我已经设置了表格,它可以很好地从数据库中提取信息。它将每个存储为一个对象,并根据定义的字段显示它。
可视化问题的简化代码:
HTML:
<div id='root'>
<b-container fluid>
<h1>Welcome</h1>
<br/>
<b-table
show-empty
stacked="md"
:items="tableItems"
:fields="fields"
sort-by="day"
>
</b-table>
</b-container>
</div>
Vue:
new Vue({
el: '#root',
data() {
return {
tableItems: [
{name: 'Mark', age: '23', day:'wed'},
{name: 'John', age: '21', day:'thu'},
{name: 'Stephen', age: '24', day:'tue'},
{name: 'Will', age: '31', day:'fri'},
{name: 'Andrew', age: '27', day:'wed'},
{name: 'James', age: '24', day:'mon'},
{name: 'Shawn', age: '29', day:'tue'},
],
fields: [
{ key: 'name', label: 'Name', sortable: true},
{ key: 'age', label: 'Age', sortable: true, class: 'text-center' },
{ key: 'day', label: 'Day', sortable: true},
],
}
}
});
目前,此代码将在日期列中按字母顺序排序。我希望它按“日期”排序,例如“周一”、“周二”、“周三”等
【问题讨论】:
标签: javascript vue.js bootstrap-vue