如何从两个过滤器制作一个过滤器?

时间:2019-04-05 18:46:29

标签: javascript html vue.js

我的任务是进行分页和搜索。我通过创建两个计算属性解决了这个问题(我可以称它们为过滤器)。另外,它们可以正常工作,但我需要团结起来。我不知道该怎么做?

我的html:

<li v-for="(post, index) of paginatedData" class="post">
          <p><span class="boldText">Title:</span> {{ post.title }}</p>
          <p><span class="boldText">Content:</span> {{ post.body }}</p>

 </li>

我的Vue.js(我的两个过滤器):

paginatedData() {
        const start = this.page * 10;
        const end = start + 10;
        return this.posts.slice(start, end);
      },
      filteredPosts() {
        return this.posts.filter((post) => {
          return post.title.match(this.search);
        });
      },

1 个答案:

答案 0 :(得分:1)

paginatedData方法中进行过滤,并在过滤后的数组上切片。

paginatedData() {
   const start = this.page * 10;
   const end = start + 10;
   return this.posts.filter((post) => {
      return post.title.match(this.search);
   }).slice(start, end);
}