javascript - 如何从另一个动作(redux)导入异步函数?
问题描述
我想将一个异步函数从一个动作导入另一个动作redux
,但它总是抛出这个错误:
但是,如果我将它放入与调用该函数的方法相同的文件中,它就可以工作。
这是我的功能:
async function getStuff(uid, callback) {
await firebase.database().ref('users/' + uid + '/stuff').once('value')
.then(snapshot => {
callback(snapshot.val());
})
.catch((err) => console.log(err))
}
这就是我调用函数的方式:
await getStuff(uid, async() => {
// some stuff
});
这就是我导入它的方式:
import { getStuff } from './stuff_actions';
解决方案
您还必须从您的函数所在的文件中导出函数
export async function getStuff(uid, callback) {
await firebase.database().ref('users/' + uid + '/stuff').once('value')
.then(snapshot => {
callback(snapshot.val());
})
.catch((err) => console.log(err))
}
推荐阅读
- javascript - Javascript识别句子,无论句子中的任何地方大小写
- pandas - 熊猫:从列表中删除括号?
- excel - 在excel中合并具有相同值的行
- java - 尝试从 oracle 数据库中选择数据并将其插入 sqlite 时内存不足
- node.js - 无法在节点上构建 node-re2:12.18.1-alpine docker 映像
- windows - 如何为 Docker 更新 Windows 容器中的路径?
- javascript - 如何编写测试,而不用在 nestjs 中模拟存储库
- typescript - 使用 async/await 链接两个 Promise
- reactjs - 如何仅在条件下处理 useEffect
- python - 通过过滤渲染 jinja2 模板时包含和排除字符串输出