如何解决Redux函数抛出“回调不是函数”
[TypeError: callback is not a function. (In 'callback(true,result)','callback' is undefined)]
函数是这样的:
export function searchEvent(categories,privateEvent,eventName,eventCity,eventHourStart,eventHourFinish,eventDayStart,eventDayFinish,callback) {
return async () => {
try {
const ref = firestore().collection('events');
if (categories.length > 0) {
const promises = [];
const allData = [];
categories.forEach(e => {
let query = ref.where(e.field,'==',e.value);
if (privateEvent) {
query = ref
.where(e.field,e.value)
.where('isPrivateEvent',true);
}
const promise = query.get().then(response => {
const data = response.docs.map(d => d.data());
let result = data;
...
allData.push(...result);
}).catch(error => {
console.log(error);
});
promises.push(promise);
});
console.log(allData);
Promise.all(promises).then(() => {
callback(true,allData);
});
} else {
let query = ref;
if (privateEvent) {
query = ref.where('isPrivateEvent',true);
}
query.get().then(response => {
const data = response.docs.map(d => d.data());
let result = data;
...
console.log(result);
callback(true,result);
}).catch(error => {
console.log(error);
});
}
} catch (e) {
console.log(e);
}
};
}
但是,我很确定我正在向上述函数传递回调,就像这样:
dispatchSearchEvent(categories,name,city,hourstart,hourfinish,daystart,dayfinish,(s,r) => {
...
});
那么,为什么当我明显地将回调传递给它以使其起作用时,为什么告诉我“回调”不是一个函数? 在涉及react-redux方面,我仍然是一个新手,因此将不胜感激。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。