4 回答

TA貢獻1812條經驗 獲得超5個贊
在這種情況下,您缺少第一個參數——要過濾的數組
const filterdata = _.filter(test, test => test.Active.Name === tobefilter)
但是你可以這樣做,前提是記住首先構建過濾后的源數據(doc)
const filterdata = _(test).filter(test => test.Active.Name === tobefilter)
const test = [{"Active": {"Id":'1', 'Name': 'Peter'}, 'Collect' : {'Id':'2', 'Name': 'John'}},{"Active": {"Id":'1', 'Name': 'Peter'}, 'Collect' : {'Id':'2', 'Name': 'tru'}},{"Active": {"Id":'1', 'Name': 'joe'}, 'Collect' : {'Id':'2', 'Name': 'mark'}}]
const tobefilter = "Peter"
const filterdata = _(test).filter(test => test.Active.Name === tobefilter)
console.log(filterdata)
<script src="https://cdn.jsdelivr.net/npm/[email protected]/lodash.min.js"></script>

TA貢獻1794條經驗 獲得超7個贊
像這樣嘗試,
您沒有傳遞數組以獲取過濾器。
const filterdata = _.filter(test, (t)=> t.Active.Name === tobefilter)

TA貢獻1868條經驗 獲得超4個贊
您缺少第一個參數,即要過濾的數組。這是正確的方法:
const filterdata = _.filter(test, (x) => x.Active.Name === tobefilter)

TA貢獻1802條經驗 獲得超4個贊
在這種情況下你真的需要 lodash 嗎?我的意思是它也是沒有它的單襯墊。
const test = [{"Active": {"Id":'1', 'Name': 'Peter'}, 'Collect' : {'Id':'2', 'Name': 'John'}},{"Active": {"Id":'1', 'Name': 'Peter'}, 'Collect' : {'Id':'2', 'Name': 'tru'}},{"Active": {"Id":'1', 'Name': 'joe'}, 'Collect' : {'Id':'2', 'Name': 'mark'}}]
const filterdata = test.filter(test => test.Active.Name === "Peter")
console.log(filterdata);
添加回答
舉報