mirror of https://github.com/waku-org/js-waku.git
Merge pull request #197 from status-im/split-use-effect
Split useEffect calls
This commit is contained in:
commit
8834f25111
|
@ -86,8 +86,17 @@ export default function App() {
|
||||||
localStorage.setItem('nick', nick);
|
localStorage.setItem('nick', nick);
|
||||||
}, [nick]);
|
}, [nick]);
|
||||||
|
|
||||||
// Waku: Start, process messages, send messages
|
|
||||||
useEffect(() => {
|
useEffect(() => {
|
||||||
|
if (stateWaku) return;
|
||||||
|
|
||||||
|
initWaku(setWaku)
|
||||||
|
.then(() => console.log('Waku init done'))
|
||||||
|
.catch((e) => console.log('Waku init failed ', e));
|
||||||
|
}, [stateWaku]);
|
||||||
|
|
||||||
|
useEffect(() => {
|
||||||
|
if (!stateWaku) return;
|
||||||
|
|
||||||
const handleRelayMessage = (wakuMsg: WakuMessage) => {
|
const handleRelayMessage = (wakuMsg: WakuMessage) => {
|
||||||
console.log('Message received: ', wakuMsg);
|
console.log('Message received: ', wakuMsg);
|
||||||
const msg = Message.fromWakuMessage(wakuMsg);
|
const msg = Message.fromWakuMessage(wakuMsg);
|
||||||
|
@ -96,6 +105,14 @@ export default function App() {
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
stateWaku.relay.addObserver(handleRelayMessage, [ChatContentTopic]);
|
||||||
|
|
||||||
|
return;
|
||||||
|
}, [stateWaku]);
|
||||||
|
|
||||||
|
useEffect(() => {
|
||||||
|
if (!stateWaku) return;
|
||||||
|
|
||||||
const handleProtocolChange = async (
|
const handleProtocolChange = async (
|
||||||
waku: Waku,
|
waku: Waku,
|
||||||
{ peerId, protocols }: { peerId: PeerId; protocols: string[] }
|
{ peerId, protocols }: { peerId: PeerId; protocols: string[] }
|
||||||
|
@ -118,26 +135,18 @@ export default function App() {
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
if (!stateWaku) {
|
stateWaku.libp2p.peerStore.on(
|
||||||
initWaku(setWaku)
|
'change:protocols',
|
||||||
.then(() => console.log('Waku init done'))
|
handleProtocolChange.bind({}, stateWaku)
|
||||||
.catch((e) => console.log('Waku init failed ', e));
|
);
|
||||||
} else {
|
|
||||||
stateWaku.relay.addObserver(handleRelayMessage, [ChatContentTopic]);
|
|
||||||
|
|
||||||
stateWaku.libp2p.peerStore.on(
|
// To clean up listener when component unmounts
|
||||||
|
return () => {
|
||||||
|
stateWaku?.libp2p.peerStore.removeListener(
|
||||||
'change:protocols',
|
'change:protocols',
|
||||||
handleProtocolChange.bind({}, stateWaku)
|
handleProtocolChange.bind({}, stateWaku)
|
||||||
);
|
);
|
||||||
|
};
|
||||||
// To clean up listener when component unmounts
|
|
||||||
return () => {
|
|
||||||
stateWaku?.libp2p.peerStore.removeListener(
|
|
||||||
'change:protocols',
|
|
||||||
handleProtocolChange.bind({}, stateWaku)
|
|
||||||
);
|
|
||||||
};
|
|
||||||
}
|
|
||||||
}, [stateWaku]);
|
}, [stateWaku]);
|
||||||
|
|
||||||
return (
|
return (
|
||||||
|
|
Loading…
Reference in New Issue