You've already forked matrix-react-sdk
mirror of
https://github.com/matrix-org/matrix-react-sdk.git
synced 2025-07-28 15:22:05 +03:00
Remove SessionStore listener on unmount
This commit is contained in:
@ -79,12 +79,17 @@ export default React.createClass({
|
|||||||
document.addEventListener('keydown', this._onKeyDown);
|
document.addEventListener('keydown', this._onKeyDown);
|
||||||
|
|
||||||
this._sessionStore = sessionStore;
|
this._sessionStore = sessionStore;
|
||||||
this._sessionStore.addListener(this._setStateFromSessionStore);
|
this._removeSSListener = this._sessionStore.addListener(
|
||||||
|
this._setStateFromSessionStore,
|
||||||
|
).remove;
|
||||||
this._setStateFromSessionStore();
|
this._setStateFromSessionStore();
|
||||||
},
|
},
|
||||||
|
|
||||||
componentWillUnmount: function() {
|
componentWillUnmount: function() {
|
||||||
document.removeEventListener('keydown', this._onKeyDown);
|
document.removeEventListener('keydown', this._onKeyDown);
|
||||||
|
if (this._removeSSListener) {
|
||||||
|
this._removeSSListener();
|
||||||
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
getScrollStateForRoom: function(roomId) {
|
getScrollStateForRoom: function(roomId) {
|
||||||
|
@ -69,11 +69,19 @@ module.exports = React.createClass({
|
|||||||
|
|
||||||
componentWillMount: function() {
|
componentWillMount: function() {
|
||||||
this._sessionStore = sessionStore;
|
this._sessionStore = sessionStore;
|
||||||
this._sessionStore.addListener(this._setStateFromSessionStore);
|
this._removeSSListener = this._sessionStore.addListener(
|
||||||
|
this._setStateFromSessionStore,
|
||||||
|
).remove;
|
||||||
|
|
||||||
this._setStateFromSessionStore();
|
this._setStateFromSessionStore();
|
||||||
},
|
},
|
||||||
|
|
||||||
|
componentWillUnmount: function() {
|
||||||
|
if (this._removeSSListener) {
|
||||||
|
this._removeSSListener();
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
_setStateFromSessionStore: function() {
|
_setStateFromSessionStore: function() {
|
||||||
this.setState({
|
this.setState({
|
||||||
cachedPassword: this._sessionStore.getCachedPassword(),
|
cachedPassword: this._sessionStore.getCachedPassword(),
|
||||||
|
Reference in New Issue
Block a user