Я написал функцию фильтра, которая фильтрует по столбцам. Я заметил, что когда слово пишется в верхнем регистре, оно не даст результата, если слово будет в нижнем регистре.
Например: Я ищу термин Paper
, я получаю все строки, содержащие слово Paper
, но не получаю строки, содержащие paper
.
Я мог бы сказать, что когда я вставляю слово в фильтр, автоматически делаю его строчным, но затем я хочу получить строки, содержащие Paper
. Как я могу решить это?
Как я могу игнорировать строчные и прописные буквы в моем фильтре?
Спасибо за помощь.
Часть HTML
<b-table class="col-sm-12 table-sm" show-empty striped hover stacked="md" tbody-tr-class="addPointer"
:items="filter"
:fields="fields"
@filter="onFilter">
<template slot="top-row" >
<td v-for="field in Object.keys(fields)" :key="field.key">
<input class="col-sm" v-if="Object.keys(filters).indexOf(field) !== -1" v-model="filters[field]" :placeholder="field">
</td>
</template>
<template slot="name" slot-scope="row">
{{row.item.name}}
</template>
</b-table>
Функция
data() {
return {
filters: {
name:'',
},
}
},
computed:{
filter () {
const filter = this.datas.filter(value => {
String(value[key]).includes(this.filters[key]))
})
return filter.length > 0 ? filter : [
{
name:'',
}
]
},