[英]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.