这里的新手Redux真的只是寻找“最佳实践”的答案。React + Redux:状态变化后滚动DOM元素
我正在使用React + Redux构建聊天应用程序。我的应用程序看起来是这样的:我的应用程序容器
- 3无状态组件,邮件列表,以及输入栏
- 操作添加用户的消息/响应
- 减速是发生在这些行动并返回消息数组
- 聊天中间件,其处理然后当ADD_MESSAGE动作分派
到目前为止好一个发射插座消息。一切都运行良好,但我不确定如何/在这个序列中我应该做DOM操作。具体来说,我想滚动到我的消息状态变化时,我的message-list
容器的底部。
我需要的所有东西都是这样的:messagesListElement.scrollTop = messagesListElement.scrollHeight;
,但不知道在哪里做适当的位置。
听起来你最好的选择是解除您messageManager组件为一类,并聆听'componentDidUpdate' https://facebook.github.io/react/docs /react-component.html#componentdidupdate如果这对你有用,我可以写出更完整的答案。 – azium
谢谢,这是有道理的,这是我正在考虑的方法。如果可能的话保持我的组件无状态是很好的,但这看起来像是最好的解决方案 –
你可以用重构帮助器https://github.com/acdlite/recompose – azium