Merge pull request #3764 from virtuacoplenny/lenny/no-cwrp-abstract-app

ref(app): move url change handling to componentDidUpdate
This commit is contained in:
virtuacoplenny 2019-01-04 07:58:21 -08:00 committed by GitHub
commit 5b45542009
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 9 additions and 12 deletions

View File

@ -56,28 +56,25 @@ export class AbstractApp extends BaseApp<Props, *> {
} }
/** /**
* Notifies this mounted React {@code Component} that it will receive new * Implements React Component's componentDidUpdate.
* props. Makes sure that this {@code AbstractApp} has a redux store to use.
* *
* @inheritdoc * @inheritdoc
* @param {Object} nextProps - The read-only React {@code Component} props
* that this instance will receive.
* @returns {void}
*/ */
componentWillReceiveProps(nextProps: Props) { componentDidUpdate(prevProps: Props) {
const { props } = this; const previousUrl = toURLString(prevProps.url);
const currentUrl = toURLString(this.props.url);
const previousTimestamp = prevProps.timestamp;
const currentTimestamp = this.props.timestamp;
this._init.then(() => { this._init.then(() => {
// Deal with URL changes. // Deal with URL changes.
let { url } = nextProps;
url = toURLString(url); if (previousUrl !== currentUrl
if (toURLString(props.url) !== url
// XXX Refer to the implementation of loadURLObject: in // XXX Refer to the implementation of loadURLObject: in
// ios/sdk/src/JitsiMeetView.m for further information. // ios/sdk/src/JitsiMeetView.m for further information.
|| props.timestamp !== nextProps.timestamp) { || previousTimestamp !== currentTimestamp) {
this._openURL(url || this._getDefaultURL()); this._openURL(currentUrl || this._getDefaultURL());
} }
}); });
} }