From 031e7d270d8155e2f79875fb5366a7a7475b1291 Mon Sep 17 00:00:00 2001 From: fragosti Date: Mon, 18 Jun 2018 18:08:38 -0700 Subject: Fix bug where we do fetch balances on wallet login --- packages/website/ts/components/portal/portal.tsx | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) (limited to 'packages/website/ts/components/portal/portal.tsx') diff --git a/packages/website/ts/components/portal/portal.tsx b/packages/website/ts/components/portal/portal.tsx index 28a303793..8de5a62ec 100644 --- a/packages/website/ts/components/portal/portal.tsx +++ b/packages/website/ts/components/portal/portal.tsx @@ -155,9 +155,6 @@ export class Portal extends React.Component { } public componentWillMount(): void { this._blockchain = new Blockchain(this.props.dispatcher); - const trackedTokenAddresses = _.keys(this.state.trackedTokenStateByAddress); - // tslint:disable-next-line:no-floating-promises - this._fetchBalancesAndAllowancesAsync(trackedTokenAddresses); } public componentWillUnmount(): void { this._blockchain.destroy(); @@ -168,6 +165,13 @@ export class Portal extends React.Component { // become disconnected from their backing Ethereum node, changed user accounts, etc...) this.props.dispatcher.resetState(); } + public componentDidUpdate(prevProps: PortalProps): void { + if (!prevProps.blockchainIsLoaded && this.props.blockchainIsLoaded) { + // tslint:disable-next-line:no-floating-promises + const trackedTokenAddresses = _.keys(this.state.trackedTokenStateByAddress); + this._fetchBalancesAndAllowancesAsync(trackedTokenAddresses); + } + } public componentWillReceiveProps(nextProps: PortalProps): void { if (nextProps.networkId !== this.state.prevNetworkId) { // tslint:disable-next-line:no-floating-promises -- cgit v1.2.3