我試圖顯示一個數組中的消息在Vue中的過濾器方法中是空的。 但是,似乎我的計算函數仍然返回一個空對象數組(如果我搜索的東西不存在)這個數組爲什麼不是空的?
我希望它只返回實際上有一個值的對象 - 應該過濾空的對象出來嗎?
因此,如果我搜索「fjhdsfjsdfjsd」前,它仍然返回約200項,只是空的對象,它不應該?
計算的功能是這樣的:
filteredAlarms: function() {
let filter = {};
let searchString = this.search_string.toLowerCase();
Object.keys(this.eventLog).forEach(key => {
filter[key] = this.eventLog[key].filter(item => {
let systemName = item.system_name.toLowerCase();
if(item.type.includes("alarm") && systemName.includes(searchString)) {
return item;
}
});
});
return filter
},
請注意,'.filter'回調應該返回一個布爾值。總是。有時候不是一個項目,有時還沒有定義。 – Bergi
您能提供一些示例輸入和輸出嗎?你的代碼應該返回一個空數組的對象,而不是相反。 – Bergi