When running it on the browser and triggering the onPrechatSubmit and onChatStarted, this is the order on the browser's console:
null --> console.log(name);
pre-chat submitted! --> console.log('pre submit submitted!');
started --> console.log('started');
`import axios from 'axios'; import { useEffect, useRef } from 'react';
const TawkMessengerReact = require('@tawk.to/tawk-messenger-react');
const ChatSupport = () => {
const onPrechatSubmit = async (data: IPreChatDetails[]) => { try { const response = await axios.post('/api/sample', data); const name = response.data.user[0].answer; const email = response.data.user[1].answer; localStorage.removeItem('name'); localStorage.removeItem('email'); localStorage.setItem('name', name); localStorage.setItem('email', email); console.log('pre submit submitted!'); } catch (err) { console.error(err); } };
const onChatStarted = async () => { try { const name = localStorage.getItem('name'); const email = localStorage.getItem('email'); console.log(name); const response = await axios.post('/api/sample', { name, email, }); console.log('started'); } catch (err) { console.log(err); } };
return ( <TawkMessengerReact propertyId={process.env.NEXT_PUBLIC_PROPERTY_ID} widgetId={process.env.NEXT_PUBLIC_WIDGET_ID} onPrechatSubmit={onPrechatSubmit} onChatStarted={onChatStarted} /> ); };
export default ChatSupport; `
When running it on the browser and triggering the onPrechatSubmit and onChatStarted, this is the order on the browser's console: null --> console.log(name); pre-chat submitted! --> console.log('pre submit submitted!'); started --> console.log('started');