微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Redux函数抛出“回调不是函数”

如何解决Redux函数抛出“回调不是函数”

我正在尝试使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 举报,一经查实,本站将立刻删除。

相关推荐


Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其他元素将获得点击?
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。)
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbcDriver发生异常。为什么?
这是用Java进行XML解析的最佳库。
Java的PriorityQueue的内置迭代器不会以任何特定顺序遍历数据结构。为什么?
如何在Java中聆听按键时移动图像。
Java“Program to an interface”。这是什么意思?