Ale*_*nes 1 async-await firebase firebase-realtime-database redux react-redux
我正在设计一个消息传递应用程序,使用redux作为我的状态管理器和firebase来存储我的数据.我已经开始以这种方式编写数据库侦听器:
const fetchMessages = roomKey => async dispatch => {
const db = firebase.database();
let { messages } = await db.ref(`messages/${roomKey}`).on('value');
dispatch({
type: SET_MESSAGES,
payload: messages,
})
Run Code Online (Sandbox Code Playgroud)
};
所有这些基本上都是通过房间密钥获取消息,然后调度一个动作,将消息设置为redux状态.
传统上,这将写成:
db.ref(`messages/${roomKey}`).on('value', snapshot => {
const messages = snapshot.messages;
dispatch({
type: SET_MESSAGES,
payload: messages,
})
});
Run Code Online (Sandbox Code Playgroud)
每次发生变化时messages/${roomKey},我的调度功能都会被执行.我想知道这是否会使用async await语法相同,如果没有,我怎么能使它工作.
希望这足够详细!