quick fix crashes with React 18
Change-Id: If877f643fc3e536718400ec35092b50f098501e8
diff --git a/client/src/components/ConversationView.js b/client/src/components/ConversationView.js
index 5cf0e87..dfba0d1 100644
--- a/client/src/components/ConversationView.js
+++ b/client/src/components/ConversationView.js
@@ -34,7 +34,7 @@
error: true
})
})
- return () => controller.abort()
+ // return () => controller.abort() // crash on React18
}, [props.accountId, props.conversationId])
useEffect(() => {
@@ -82,7 +82,7 @@
return {...state}
})
}).catch(e => console.log(e))
- return () => controller.abort()
+ // return () => controller.abort() // crash on React18
}, [state, loadingMessages])
const sendMessage = (message) => {
diff --git a/client/src/components/ConversationsOverviewCard.js b/client/src/components/ConversationsOverviewCard.js
index 914d697..89f8576 100644
--- a/client/src/components/ConversationsOverviewCard.js
+++ b/client/src/components/ConversationsOverviewCard.js
@@ -7,7 +7,8 @@
export default function ConversationsOverviewCard(props) {
const navigate = useNavigate()
const accountId = props.accountId || useParams().accountId
- const [state, setState] = useState({ loaded: false })
+ const [loaded, setLoaded] = useState(false)
+ const [conversations, setConversations] = useState([])
useEffect(() => {
const controller = new AbortController()
@@ -15,9 +16,10 @@
.then(res => res.json())
.then(result => {
console.log(result)
- setState({ loaded: true, conversations: Object.values(result).map(c => Conversation.from(accountId, c)) })
+ setLoaded(true)
+ setConversations(Object.values(result).map(c => Conversation.from(accountId, c)))
})
- return () => controller.abort()
+ // return () => controller.abort() // crash on React18
}, [accountId])
return (
@@ -28,7 +30,7 @@
Conversations
</Typography>
<Typography gutterBottom variant="h5" component="h2">
- {state.loaded ? state.conversations.length : <CircularProgress size={24} />}
+ {loaded ? conversations.length : <CircularProgress size={24} />}
</Typography>
</CardContent>
</CardActionArea>