我正在使用socket.io
在服务器和客户端之间进行通信,然后在javascript中使用cytoscape.js
绘制内容。
例如,我使用
document.getElementById('button').onclick = function () {
socket.emit('create new');
}
告诉服务器创建一个新项目。从服务器,我告诉客户端在页面上绘制它
socket.on('new object', function (data) {
// draw with cytoscape
cy.add(data); // add data object to cytoscape elements
});
它有效,但问题是,如果我点击页面上的某个链接转到另一个页面,然后使用浏览器返回按钮(history.go(-1)
)返回,我使用javascript绘制的元素是不再存在了。
我必须重新加载页面才能显示数据。
起初我认为这是一个缓存问题,但我没有使用缓存或其他任何东西,所以我怀疑它是cytoscape.js
或socket.io
的问题。可能cytoscape.js
没有保存客户端上的内容(某处?)。