Javascript 如何在vue-tables-2服务器端添加范围筛选器

Javascript 如何在vue-tables-2服务器端添加范围筛选器,javascript,vue.js,vuejs2,vue-tables-2,Javascript,Vue.js,Vuejs2,Vue Tables 2,我使用服务器端的vue-tables-2组件来表示数据库中的信息。此表包含数字列、文本列和日期列 我的问题是数字列过滤。我想为范围筛选添加选项(>,>=,自定义筛选器是由包的使用者实现的外部筛选器。但是,它们可以嵌入表中,而不是使用插槽的文本筛选器(请参阅插槽文档) 由于筛选器位于包的外部,因此您有责任使用事件总线或Vuex让包知道它何时发生了更改 换句话说,包和自定义筛选器之间的唯一接口是事件。包不知道或无法控制何时或在何种情况下发出事件。它被动地侦听更改,并将收到的查询与本机查询合并 例如,

我使用服务器端的vue-tables-2组件来表示数据库中的信息。此表包含数字列、文本列和日期列


我的问题是数字列过滤。我想为范围筛选添加选项(>,>=,自定义筛选器是由包的使用者实现的外部筛选器。但是,它们可以嵌入表中,而不是使用插槽的文本筛选器(请参阅
插槽
文档)

由于筛选器位于包的外部,因此您有责任使用事件总线或Vuex让包知道它何时发生了更改

换句话说,包和自定义筛选器之间的唯一接口是事件。包不知道或无法控制何时或在何种情况下发出事件。它被动地侦听更改,并将收到的查询与本机查询合并

例如,假设您编写了一个
age-range-filter
组件,该组件发出一个
changed
事件,并希望它替换
age
列本机文本筛选器:

<v-server-table ... :columns="['name','age']" :options="tableOptions">
<div slot="filter__age">
    <age-range-filter @changed="filter"></age-range-filter>
</div>
</v-server-table>

谢谢,但我的问题是关于带有数值的列,而不是日期。我的错。我已经重写了我的答案
data:{
tableOptions:{
   filterable:['name'] // omit 'age' as it will be replaced by your component
   customFilters:['age-range']
  }
},
methods:{
   filter(query) {
     VueEvent.$emit('age-range', query);
   }
}