0
我有一個問題,當我試圖篩選陣列搜索一個特定的值未捕獲的類型錯誤:OBJ [鍵] .includes不是濾波器
該數組內的功能,我過濾器,我一直在尋找一個特定的「CodigoPostagem」,所以我要做的就是:
return rootState.emailsOpen
.filter(obj => Object.keys(obj)
.some(key => obj[key]
.includes(email.CodigoPostagem)));
的「rootState.emaislOpen」是對象,它裏面有很多的對象包含像那些數據image「0:Object ...」
的包括嘗試搜索CodigoPostagem的具體數目,如32,31等
我所需要的是,它返回整個對象(0:對象),或至少的位置。
rootState JSON:
{
"pending":{
"emails":false,
"messageOpen":false
},
"error":{
"emails":null,
"messageOpen":null
},
"emails":[
{
"CodigoPostagem":32,
"DataMensagem":"2017-07-02T13:32:00",
"Emitente":"INOVA Farma",
"Titulo":"Item,
"Visualizado":true
},
{
"CodigoPostagem":14,
"DataMensagem":"2017-06-28T14:35:00",
"Emitente":"INOVA Farma",
"Titulo":"Mensagem número 14",
"Visualizado":true
},
],
"messageOpen":null,
"emailsOpen":[
{
"CodigoPostagem":14,
"DataMensagem":"2017-06-28T14:35:00",
"Emitente":"INOVA Farma",
"Titulo":"Mensagem número 14",
"Mensagem":"Test",
"Visualizado":true
},
],
"wait":true,
"loaded":true,
}
錯誤是告訴你某些'key','obj [key]'是某種類型的值沒有'.includes()'方法可用。 – Pointy
也許你忘了關閉'.some()'方法? –
我想我不需要使用這個'obj [key]'因爲當我調試它已經在對象內時,所以我嘗試了類似的東西,但是沒有任何回報:'.filter(obj => Object.keys obj).some(obj.CodigoPostagem === email.CodigoPostagem));' 或 '.filter(obj => Object.keys(obj).CodigoPostagem === email.CodigoPostagem);' –