2017-05-07 57 views
0

UPDATE角/ 2:過濾與多個定義的屬性

由於developer003 suggested JSON響應,我這樣做:

enter image description here

它的工作原理,但不是在所有。如果我添加其他屬性如c.details.author(string [])或c.details.index(number),它不起作用,並且該函數不會返回任何內容(錯誤)。

這裏我JSON數據庫的摘錄:

[ 
    { 
    "index": 1, 
    "name": "ad dolor ipsum quis", 
    "details": { 
     "author": ["Wallace Stephens", "Steve Ballmer"], 
     "game": { 
     "short": "tdp", 
     "name": "Thief: The Dark Project" 
     }, 
     "newdark": { 
     "required": true, 
     "version": "1.20" 
     }, 
     "firstreleasedate": "2007/04/27", 
     "lastupdatedate": "2017/01/28" 
    } 
    } 
] 

這樣我就可以找另一個細節性能比字符串。任何想法?


ORIGINAL POST

enter image description here

我創建了一個函數,當我把它作爲(KEYUP)情況下,當I型中的輸入濾波器的東西的HTML數據表。

return c.name.toLowerCase().indexOf(input.target.value.toLowerCase()) != -1;

我希望能夠過濾,不僅,也受到details.authordetails.game.namedetails.firstrelease ...等。

我如何更改c.name以應用這些屬性?我是否需要創建一個循環?我應該使用.map()

+1

嘿,我的答案是否適合你? – developer033

+0

@ developer033完全沒有,請看我更新的主要文章:) – Jonathan

回答

2

現在我能想到的方法2:

1:

º創建function解析(toLowerCase())屬性值和處理,如果它包含值或不:

containsVal(property, value) { 
    return property.toLowerCase().indexOf(value) !== -1; 
} 

filterFunc(c) { 
    return this.containsVal(c.name, VALUE_TO_SEARCH) || 
    c.details && (
     this.containsVal(c.details.author, VALUE_TO_SEARCH) || 
     this.containsVal(c.details.firstrelease, VALUE_TO_SEARCH) || 
     (c.details.game && this.containsVal(c.details.game.name, VALUE_TO_SEARCH)) 
    ); 
} 

第2張:

º映射唯一需要的屬性並對其進行過濾。

arr.map(item => { 
    return { 
    name: item.name, 
    author_details: item.details && item.details.author, 
    firstrelease_details: item.details && item.details.firstrelease, 
    game_name: item.details && item.details.game && item.details.game.name 
    }; 
}).filter(item => { 
    return Object.keys(item).some(key => { 
    const value = item[key]; 

    return value && value.toLowerCase().indexOf(VALUE_TO_SEARCH) !== -1; 
    }); 
}); 
+0

@ developer003它工作,但沒有,請參閱我的主要更新後的帖子。 – Jonathan

+0

你可以在你的文章中包含模板嗎?或者也許是一個沉悶的人.. – developer033