使用 Re-base 时 Firebase 在 React 中绑定和解除绑定
Firebase Bind and Unbind from State in React when using Re-base
在将 re-base 模块与 Firebase 和 React 结合使用时,我在 React 以及跨应用程序从 Firebase 获取内容的方式方面遇到了一些问题。
我有两个组件/"pages" 和
在家里,我只是 "post" 一条评论,并显示刚刚发布的评论和已发布的评论数。在评论中,我想显示所有已发布的评论。
我正在将 Home 中的评论添加到 firebase 及其工作...
var base = Rebase.createClass('https://my-app.firebaseio.com/');
componentDidMount : function() {
base.bindToState('comments' , {
context : this,
state : 'comments',
});
这完全有效我可以 "post" 评论到 firebase 并同步它们。当我从“主页”转到“评论”然后再回来时,问题就来了,我收到了这个错误。
Endpoint (comments) already has listener bindToState
我试过这个:
componentWillUnmount: function() {
base.removeBinding('comments');
},
但是没有用。这不是在 React 中做这件事的正确方法吗,我错过了什么吗?我会感谢一些帮助。谢谢!
根据此处的文档 https://github.com/tylermcginnis/re-base,您的代码应该是...
this.commentsRef = base.bindToState('comments' , {
context : this,
state : 'comments',
});
还有...
componentWillUnmount(){
base.removeBinding(this.commentsRef);
}
在将 re-base 模块与 Firebase 和 React 结合使用时,我在 React 以及跨应用程序从 Firebase 获取内容的方式方面遇到了一些问题。
我有两个组件/"pages" 和
在家里,我只是 "post" 一条评论,并显示刚刚发布的评论和已发布的评论数。在评论中,我想显示所有已发布的评论。
我正在将 Home 中的评论添加到 firebase 及其工作...
var base = Rebase.createClass('https://my-app.firebaseio.com/');
componentDidMount : function() {
base.bindToState('comments' , {
context : this,
state : 'comments',
});
这完全有效我可以 "post" 评论到 firebase 并同步它们。当我从“主页”转到“评论”然后再回来时,问题就来了,我收到了这个错误。
Endpoint (comments) already has listener bindToState
我试过这个:
componentWillUnmount: function() {
base.removeBinding('comments');
},
但是没有用。这不是在 React 中做这件事的正确方法吗,我错过了什么吗?我会感谢一些帮助。谢谢!
根据此处的文档 https://github.com/tylermcginnis/re-base,您的代码应该是...
this.commentsRef = base.bindToState('comments' , {
context : this,
state : 'comments',
});
还有...
componentWillUnmount(){
base.removeBinding(this.commentsRef);
}