Please help me figure out with mysterious behaviour. So i'm getting data from firebase:
useEffect(() => {
if(category && typeof category.id !== undefined){
const paramsObject = {}
db.collection(`dictionaries/ESTATE_PARAMS/${estateType}/${category.id}/params`).onSnapshot(params => {
params.docs.map(param => paramsObject[param.id] = param.data())
})
const paramFields = convertParamObjetcToFields(paramsObject)
// setParams(paramFields)
// setIsLoading(false)
}
}, [category])
onSnapshot im saving all docs as object properties to my paramsObject. Afterl loop , if i console.log(paramsObject)
im getting:
I want to parse paramsObject and return modification of object in other func. Thats why im doing: const paramFields = convertParamObjetcToFields(paramsObject)
In function convertParamObjectToFields
const convertParamObjetcToFields = paramsObject => {
const Fields = {}
console.log(paramsObject) //here i'm getting object!
for (const key in paramsObject) {
console.log(key) //NOTHING!!! WHY????!
// switch (paramsObject[key].input) {
// case 'text':
// {
// Fields[key] = createField('input', 'text', paramsObject[key].label, paramsObject[key].mask)
// }
// break
// case 'checkbox':
// {
// Fields[key] = createCheckbox(paramsObject[key].label)
// }
// break
// default:
// Fields[key] = createField('input', 'text', paramsObject[key].label, paramsObject[key].mask)
// }
}
return Fields
}
i have some mistic!! i cant parse my object. even i cant dive into loop, cause i cant see any console.log from that func in loop. WHY?