如果filterBy返回空,则显示“空消息”

时间:2015-09-23 13:48:21

标签: vue.js

我有一个v-repeat实例,想要通过搜索键过滤它。 如果搜索不匹配,我希望能够显示一条消息: “没有与您的查询匹配的结果”或类似的内容。

她是个小提琴:http://jsfiddle.net/yMv7y/958/

因此,只有当过滤器没有返回任何答案时,才会显示该消息。

想法?

1 个答案:

答案 0 :(得分:6)

您需要计算属性。基本上就像:

computed: {
  filteredThings: function () {
      return this.things.filter(function(thing){
          return thing.indexOf(this.searchQuery) > -1;
      }.bind(this));
  }
}

演示:http://jsfiddle.net/dewey92/Lr9r2kfv/2/

我也在Vue.js empty filter results

中回答了这类问题