2016-07-31 29 views

回答

1

如在Doc中所解释的,过滤器filterBy限于指示值为Array的指令,例如, v-for

而对于ARGS:

  • 对于targetStringOrFunction ARG:

假设我们有一个字符串数组,你想根据来回例如输入一个值对其进行过滤,为了实现这个目标,你可以使用这样的filterBy

new Vue({ 
    el: '...', 

    data: { 
     searchedValue: '' // keeping it empty will simply show all results 
    } 
    ... 
}); 

在HTML:

<div v-for="value in values | filterBy searchedValue"> 

您可以将searchedValue绑定到输入以添加效果。

有关功能部分,请参阅下面的示例。

  • 对于in{String} [...searchKeys] ARGS:

假定我们的用户的数组,并在用户对象,我们有一个firstNamelastName属性和你想要对其进行过滤根据一个值,为了实现这个目标,你可以使用这样的filterBy

<div v-for="user in users | filterBy searchedValue in 'firstName'"> 

或者你可以在多个键搜索:

<div v-for="user in users | filterBy searchedValue in 'firstName' 'lastName'"> 

而且你可以创建一个函数来包装,像这样的代码:即HEPL :)

+0

var demo = new Vue({ el: '#demo', data: { searchedValue: '', users: [ {firstName: 'Jhone', lastName:'Doe'}, {firstName: 'Daved', lastName:'Bazz'}, {firstName: 'Pieter', lastName:'Foo'}, ] }, methods: { myFilter: function(user) { return user.firstName == searchedValue; //Or what erev you want here } }, }) 

希望,所以{字符串|函数} targetStringOrFunction并不意味着实际的循环本身。 似乎它们的语法与“in”关键字相同 – Reyn

+0

是的,'targetStringOrFunction'只是'{String |功能}':) – Maraboc

+0

你能接受帮助别人得到正确答案的答案;) – Maraboc