simulate Single Page App with websockets

This commit is contained in:
2023-01-29 18:04:16 -06:00
parent f99ad56e1d
commit 8b4a97bf73
11 changed files with 105 additions and 57 deletions

View File

@@ -87,3 +87,26 @@ function toggleMenu() {
}
}
}
let socket = io();
function emit(event) {
socket.emit(event);
}
function emitData(event, data) {
socket.emit(event, data)
}
socket.on('goto', (page) => {
pagename = page[0];
content = page[1];
let root = document.getElementById('root');
root.innerHTML = content;
root.querySelectorAll("script").forEach(x => {
eval(x.innerHTML);
});
document.querySelector('title').textContent = page[2];
if (pagename == 'home') pagename = '/';
history.pushState(null, null, pagename);
});