你如何在气泡聊天下渲染物品时间反应原生天才聊天?

zid*_*ryi 3 javascript chat react-native react-native-gifted-chat

我使用 React Native Gifted Chat 创建 UI 聊天,我想在气泡聊天下渲染聊天时间和符号。

我想要像这样的图像: 在此处输入图片说明

我曾尝试使用渲染消息,但没有成功,请帮忙。

Egi*_*zas 5

我只是自己在做这个。您需要做的是拥有自定义的 renderBubble,您可以在其中使用自己的组件进行包装。它看起来像这样。代码的第一部分只是将时间戳向左或向右对齐,具体取决于消息是否由当前用户编写。

renderBubble(props) {
    var sameUserInPrevMessage = false;
    if (props.previousMessage.user !== undefined && props.previousMessage.user) {
      props.previousMessage.user._id === props.currentMessage.user._id ? sameUserInPrevMessage = true : sameUserInPrevMessage = false;
    }

    var messageBelongsToCurrentUser = currentUserId == props.currentMessage.user._id;
    return (
      <View>
        {!sameUserInPrevMessage && <View
          style={messageBelongsToCurrentUser ? styles.messageTimeAndNameContainerRight : styles.messageTimeAndNameContainerLeft}
        >
          
        <Bubble
          {...props}
        />
          <Text style={styles.messageTime}>{moment(props.currentMessage.createdAt).format("LT")}</Text>
          <Text style={styles.messageUsername}>{props.currentMessage.user.name}</Text>
        </View>}
      </View>
    )
  }
Run Code Online (Sandbox Code Playgroud)

也把它放在 GiftedChat 组件中 renderMessage={this.renderBubble}