reactjs - Map 方法不适用于基于 Firestore 的 Next 应用程序
问题描述
我正在尝试基于 Firebase 数据返回一个简单的 JSX 组件,但它似乎不起作用。我尝试只返回组件并且效果很好。但是,如果我尝试映射它,它就不起作用。服务器肯定会返回数据,因为我可以将其登录到控制台。我尝试在 Codesandbox 中设置代码,但设置不正确。任何帮助深表感谢。
这是我的 Github 链接:https ://github.com/servesh-chaturvedi/Chat-App-with-firebase
CodeSandBox 中的当前代码:https ://codesandbox.io/s/small-morning-clnrp?file=/components/Sidebar.js
{chatSnapshot?.docs.map((chat) => {
<Chat key={chat.id} id={chat.id} users={chat.data().users} />
})}
解决方案
当您使用箭头函数时,默认行为是返回箭头右侧的任何内容,例如:
const returnsHello = () => 'Hello'
returnsHello() //'Hello'
但是,当您想在代码块中使用箭头函数时,就像使用花括号一样,隐含的返回值将被删除,并且必须明确。假设您没有其他问题,这是您应该可以工作的代码编辑。
{chatSnapshot?.docs.map((chat) => {
return <Chat key={chat.id} id={chat.id} users={chat.data().users} />
})}
这将遍历数组的每个元素,并使用数组值返回一个包含 Chat 组件的新数组。
推荐阅读
- r - 当我包含新的固定效果时,MEEM 中的错误
- r - 防止 rm_stopwords 函数创建列表
- html - CSS / SCSS - 访问具有未知子类型的子元素的子元素
- python - 使用带有 3 通道输入的 HoughCircles 时出错
- node.js - 傀儡师。Page.evluate() 没有运行或没有得到结果
- java - 缺少启动器的 Spring Boot 应用程序失败启动,这是不想要的
- php - 如何解决混合内容:使用带有 HTTPS 的 Wordpress 并且无法访问管理员?
- javascript - 确定元素是否在视口中 - 在滚动期间 - 返回 true / false
- python - python float 函数如何从 float(4.1E-2) 产生值 0.041?
- javascript - React 应用程序和 iframe 内的 React 应用程序之间的通信