on master help sign in
Consistently use useCallback
61d2a35Fang
src/views/Reticket/Confirm.js+2−4
@@ -1,4 +1,4 @@
1−import React, { useState } from 'react';
1+import React, { useState, useCallback } from 'react';
2import * as need from 'lib/need';
2import * as need from 'lib/need';
3import { Just, Nothing } from 'folktale/maybe';
3import { Just, Nothing } from 'folktale/maybe';
4
4
@@ -32,9 +32,7 @@ export default function Confirm({ STEP_NAMES, newWallet, storeNewWallet }) {
32 });
32 });
33 });
33 });
34
34
35− const next = () => {
36− push(STEP_NAMES.DOWNLOAD);
35+ const next = useCallback(() => push(STEP_NAMES.DOWNLOAD), [push, STEP_NAMES]);
37− };
38
36
39 const paperRenderer = Nothing.hasInstance(generatedWallet) ? null : (
37 const paperRenderer = Nothing.hasInstance(generatedWallet) ? null : (
40 <PaperRenderer
38 <PaperRenderer
src/views/Reticket/DoReticket.js+1−5
@@ -40,7 +40,7 @@ export default function DoReticket({ newWallet, completed }) {
40 })
40 })
41 .then(() => {
41 .then(() => {
42 setUrbitWallet(newWallet.value.wallet);
42 setUrbitWallet(newWallet.value.wallet);
43− next(); //TODO don't auto-redirect
43+ completed(); //TODO don't auto-redirect
44 })
44 })
45 .catch(err => {
45 .catch(err => {
46 setGeneralError(err);
46 setGeneralError(err);
@@ -63,10 +63,6 @@ export default function DoReticket({ newWallet, completed }) {
63 [setState, setNeedFunds]
63 [setState, setNeedFunds]
64 );
64 );
65
65
66− const next = () => {
67− completed();
68− };
69−
70 const renderAdditionalInfo = () => {
66 const renderAdditionalInfo = () => {
71 if (generalError) {
67 if (generalError) {
72 return (
68 return (
src/views/Reticket/Download.js+2−4
@@ -1,4 +1,4 @@
1−import React, { useState } from 'react';
1+import React, { useState, useCallback } from 'react';
2import { Nothing } from 'folktale/maybe';
2import { Nothing } from 'folktale/maybe';
3
3
4import View from 'components/View';
4import View from 'components/View';
@@ -17,9 +17,7 @@ export default function Download({ STEP_NAMES, newWallet }) {
17 setHasDownloaded(true);
17 setHasDownloaded(true);
18 };
18 };
19
19
20− const next = () => {
21− push(STEP_NAMES.VERIFY);
20+ const next = useCallback(() => push(STEP_NAMES.VERIFY), [push, STEP_NAMES]);
22− };
23
21
24 return (
22 return (
25 <View>
23 <View>
src/views/Reticket/Verify.js+2−4
@@ -1,4 +1,4 @@
1−import React from 'react';
1+import React, { useCallback } from 'react';
2import { Input, AccessoryIcon } from 'indigo-react';
2import { Input, AccessoryIcon } from 'indigo-react';
3
3
4import View from 'components/View';
4import View from 'components/View';
@@ -16,9 +16,7 @@ export default function Verify({ STEP_NAMES, newWallet }) {
16 });
16 });
17 const ticket = ticketInput.data;
17 const ticket = ticketInput.data;
18
18
19− const next = () => {
20− push(STEP_NAMES.RETICKET);
19+ const next = useCallback(() => push(STEP_NAMES.RETICKET), [push, STEP_NAMES]);
21− };
22
20
23 const matches = newWallet.value.wallet.ticket === ticket;
21 const matches = newWallet.value.wallet.ticket === ticket;
24
22