问题标签 [react-native-gifted-chat]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
react-native - 如何在聊天应用程序中显示发件人的用户名?
我在 UI 和后端使用 react-native-gifted-chat,我使用 AWSAppSync/GraphQL 来存储用户数据。我不太确定如何在我的 ChatApp 中显示发件人的用户名,并且需要此功能进行群聊。到目前为止,这是我的代码。
javascript - 为什么 react-native-gifted-chat 不能从 firebase 时间戳正确显示时间?
我在我的应用程序中使用了react-native-gifted-chat来添加聊天功能。目前我能够正确发送和接收来自 firebase 的消息。但是,问题是react-native-gifted-chat
总是显示 12:00 AM 的消息发送时间。这是因为它无法将 firebase 时间戳转换为时间。谁能帮我解决一下?
这是我使用GiftedChat组件的方式:
以下是我用于在 firestore 中保存消息的代码:
在上面的代码中是有天赋的聊天消息,message
其中包含属性:_id
、、text
和。createdAt
user
以下是消息在 firebase 中的存储方式:
当我显示消息时:
react-native - 在有天赋的聊天中删除和复制消息
使用 Dialogflow,我有 onLongPress 到 GiftedChat 组件,如下所示:
onLongPress 返回上下文,消息。然后您可以显示一个 ActionSheet 并添加要删除和复制的逻辑。
这里我有代码的发送属性:
我犯了一个非常愚蠢的错误,这仅适用于箭头函数,除非您手动将其绑定到普通函数,因此必须在 onLongPress 中使用箭头函数
react-native - 升级到 Expo SDK36 (RN 0.61) 后开始出现警告:componentWillMount 已重命名,不建议用于有天赋的聊天
升级到 Expo SDK36 (RN 0.61) 后 react-native-gifted-chat 开始抛出这两个警告(componentWillMount 和 componentWillReceiveProps 已重命名):
我在用:
以下是我实施天才聊天的方法:
有没有办法解决我自己的这些警告,还是我应该等待新的有天赋的聊天发布?
android - 更改屏幕并随机打开时状态不会卸载( react-navigation - firebase - react native-maps - giftedcha )
在屏幕之间导航时不会重置屏幕状态。
屏幕 A:地图(主屏幕) 屏幕 B:地图过滤器
当用户登录时,他会看到主屏幕 - 屏幕 A - 与 firebase 实时数据库中的用户一起在 componentdidmount setState 上。为了过滤地图,他进入屏幕 B 设置过滤器,过滤器被保存到 firebase。保存过滤器后,他返回屏幕 A,但初始状态的用户是相同的,要查看过滤列表,用户需要重新启动应用程序。
当用户发送消息时,与天才聊天库和 Firebase 有同样的问题,聊天屏幕会在其他用户的应用程序上随机打开并重新打开,即使用户没有聊天也是如此。
在这两种情况下都尝试将 isMonted = true 放在 componentdidmount 上,并在离开屏幕时将其设置为 false,但没有成功。
尝试将屏幕将所有初始状态设置为 false 时设置状态,也没有运气。
所有屏幕都在同一个导航堆栈上。
使用:-expo -firebase -react 本机导航 -react 本机地图 -giftedchat
当用户离开屏幕并防止屏幕随机打开时,有什么方法可以卸载状态?
尝试过:屏幕出现时调用哪个生命周期事件?但数据保持不变
react-native - 在 react native 天才聊天中,哪些道具用于在工具栏中添加图像和相机等额外功能?我如何实现它?
我是新来的反应原生天才聊天。我尝试在聊天工具栏中添加相机、图库等功能。我通读了道具。我认为它要么是renderInputToolbar 要么是renderComposer。但是该网站没有任何关于如何使用其道具的描述。它只是说明什么是 for 以及您可以通过什么类型。
有人可以解释一下如何使用这些道具吗?非常感谢!
javascript - 在多频道聊天应用程序中,如何显示仅与特定聊天频道相关的消息?
环境:expo 36.0.0 / React Native 0.61 / react-native-gifted-chat 0.13.0 / firebase 7.6.0
我的目标:仅在 Gifted Chat UI 上呈现特定于特定聊天频道的消息。
预期结果:只有与给定频道有关的消息才应显示在 Gifted Chat UI 上。
实际结果 :
- 当我从一个聊天频道导航到另一个聊天频道时,总消息会累积。
- 当我回到较早的频道时,同一聊天频道的消息会重复不止一次。
- 警告:遇到两个孩子用同一个钥匙,
%s
。密钥应该是唯一的,以便组件在更新时保持其身份。非唯一键可能会导致子项被复制和/或省略 - 该行为不受支持,并且可能在未来版本中更改。%s
到目前为止我尝试了什么?1. 每次用户使用 componentDidUpdate 从一个频道导航到另一个频道时,重新订阅新的聊天频道。2. 每次用户更改聊天频道时,将消息数组的状态设置为空数组。3.在Firebase中退订上一个节点,在componentDidUpdate中订阅一个新节点。这里的节点代表 Firebase 中由 ID 标识的聊天频道。每个节点都包含与该特定聊天频道相关的所有消息的子节点。