如何使用计算属性筛选数组
How to filter array using computed property?
如何使用Vue.js 2.0
中的计算属性筛选数组?这项任务在旧版本的Vue
中相当琐碎,但现在它涉及得更多了。我正在表格中显示数据:
<tr v-for="person in filterPeople">
<td>{{person.name}}</td>
<td>{{person.age}}</td>
</tr>
我有一个输入字段,可以在其中筛选姓名和年龄。我不确定我在这里做错了什么:
computed: {
filterPeople: function(){
var self = this
return this.people.filter(function(p){
return p.name.indexOf(self.searchDetails) > - 1
})
}
}
如果我键入输入,它不会像我期望的那样按姓名或年龄过滤人员。演示:http://codepen.io/p-adams/pen/AXPKko
您的问题非常简单。您正在表中使用输入标记。尝试添加一个包含div标记。给它应用程序id,并在其中放入输入元素。这应该可以解决问题。
<div id="app">
<input
class="form-control"
v-model="searchDetails"
placeholder="filter by name or age"
>
<table class="table table-striped" >
<thead>
...rest of code
Vue仍然受到HTML的一些规则的约束,其中之一是表标记只能将某些标记作为直接子级。
相关文章:
- 根据多个值筛选数组
- 使用特定值筛选数组
- 在javascript中按字符串长度筛选数组
- 如何筛选数组数组
- 如何获取输入字段的值并使用它来筛选数组
- 基于键和值的筛选数组
- 对多个选项进行筛选数组以在新选择中返回选项
- AngularJS ngOptions按布尔字段筛选数组
- 使用用户输入的维度,根据每个元素中的字符数筛选数组
- 需要有关创建筛选数组内容的复选框的帮助
- 使用jQuery筛选数组
- 如何使用foreach绑定将select选项中的参数传递给触发器和筛选数组可观测值
- 如何使用jQuery.grep()动态筛选数组
- 数组的严格筛选数组
- 在PHP中使用关键字筛选数组
- 基于javascript中的另一个数组筛选数组
- 基于索引数组筛选数组
- 为提前输入筛选数组的最快方法
- Angularjs基于array类型的属性来筛选数组
- 返回只包含与给定值匹配的元素的筛选数组