[英]Context.Consumer source value map not rendering any element
我正在尝试呈现从Context.Consumer
收集的一系列消息。
我的实现如下:
class UserChat extends React.Component {
render() {
const { classes } = this.props;
return (
<Box display="flex" flexDirection="column">
<span>test nessages</span>
<sessionContext.Consumer>
{(session) => {
session.chat.lastMessages.map((message) => {
console.log(message);
return <span key={message.id}>{message.text}</span>;
});
}}
</sessionContext.Consumer>
</Box>
);
}
}
export default withStyles(useStyles)(UserChat);
问题是除了测试消息之外没有任何消息被呈现。
console.log(message)
输出以下内容:
{userName: "User1", avatar: "", id: 12355435435, text: "Test message"}
{userName: "User2", avatar: "", id: 210394240, text: "Test message 2"}
您忘记返回映射的 JSX。
class UserChat extends React.Component {
render() {
const { classes } = this.props;
return (
<Box display="flex" flexDirection="column">
<span>test nessages</span>
<sessionContext.Consumer>
{(session) => {
return session.chat.lastMessages.map((message) => {
console.log(message);
return <span key={message.id}>{message.text}</span>;
});
}}
</sessionContext.Consumer>
</Box>
);
}
}
export default withStyles(useStyles)(UserChat);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.