render
Description
Optional. Controls how messages are displayed in the widgetUsage
render?: "bubbles" | "flow" | ComponentType<{
owned?: string | number;
edit?: string | number;
author: {
id: string | number;
name?: string;
avatar?: string;
color?: string;
};
date: Date;
}>;
Parameters
The render property accepts one of the following:
-
"bubbles" - displays messages in a bubble-style layout, similar to a chat interface.
-
"flow" (default) - displays messages in a forum/thread style layout.
-
Component - a custom React component used to render each message.
When using a Component, the component receives the following props:
-
owned
- (optional) the ID of the current user, used to apply “owned” styling to messages. -
edit
- (optional) the ID of the user allowed to edit the message. -
author
- (required) the author object of the message, including:id
- (required) unique identifier of the authorname
- (optional) display name of the authoravatar
- (optional) avatar URL of the authorcolor
- (optional) color used to style the author’s messages
-
date
- (required) the timestamp of when the message was posted
Examples
Rendering messages as a text chat
<Comments value={value} render="bubbles" />
This example renders messages in a bubble style, similar to a text chat.
Rendering messages as a forum thread
<Comments value={value} render="flow" />
This example renders messages in a forum thread style.
Rendering messages with a custom component
<Comments value={value} render={MyMessageRenderer} />
This example uses a custom React component for rendering messages.