I have fixed the problem. I have identified that, with the newest library, zoom will not give any freedom to restrict the meeting view into a react component. I have changed my code design. I could not use the hack anymore, rather I’m forced to live with the decision that zoom made to inject the <div id="zmmtg-root"/>
into my SPA and do whatever they want.
I added these below lines at the top of my custom React component.
import {ZoomMtg} from "@zoomus/websdk"
import "@zoomus/websdk/dist/css/bootstrap.css"
import "@zoomus/websdk/dist/css/react-select.css"
ZoomMtg.setZoomJSLib("https://source.zoom.us/1.8.5/lib", "/av")
And in my initialization of zoom object looks as follows:
ZoomMtg.preLoadWasm()
ZoomMtg.prepareJssdk()
ZoomMtg.init({
leaveUrl: 'https://www.abc.com/' + this.state.userRedirectPath,
isSupportAV: true,
isSupportChat: true,
disableInvite: true,
disableRecord: true,
disableJoinAudio: true,
success: function () {
ZoomMtg.join(
{
meetingNumber: parseInt(meetingSession.zoomMeetingId, 10),
userName: email,
signature: signature,
apiKey: apiKey,
passWord: meetingSession.zoomMeetingPassword,
success: function (res) {
console.log('join meeting success')
document.getElementById('zmmtg-root').style.display = "block"
},
error: function (res) {
console.log(res)
}
}
)
},
error: function (res) {
console.log(res)
}
})
I removed all jQuery dependencies from my entire front end app. That’s basically it. Now I’m on v1.8.5 which works as usual.