tho*_*uts 6 javascript node.js socket.io reveal.js
我按照以下链接的示例进行了操作:https://github.com/hakimel/reveal.js#multiplexing,但不知何故多路复用不起作用 - 当主幻灯片更新时客户端不会更新.我已经尝试使用reveal.js demo socket.io服务器,并尝试托管我自己的.
这两个选项都不起作用,我很确定我已经正确配置它们.这是我的配置代码:
Reveal.initialize({
controls: true,
progress: true,
history: true,
center: true,
multiplex: {
id: 'e2bc6e79f19fbe63',
secret: '13661966883862075064',
url: 'revealjs.jit.su:80'
},
dependencies: [
{ src: '//cdnjs.cloudflare.com/ajax/libs/socket.io/0.9.10/socket.io.min.js', async: true },
{ src: 'plugin/multiplex/client.js', async: true },
{ src: 'plugin/multiplex/master.js', async: true },
]
// { src: 'plugin/search/search.js', async: true, condition: function() { return !!document.body.classList; } }
// { src: 'plugin/remotes/remotes.js', async: true, condition: function() { return !!document.body.classList; } }
});
Run Code Online (Sandbox Code Playgroud)
Reveal.initialize({
controls: true,
progress: true,
history: true,
center: true,
multiplex: {
id: 'e2bc6e79f19fbe63',
secret: null,
url: 'revealjs.jit.su:80'
},
dependencies: [
{ src: '//cdnjs.cloudflare.com/ajax/libs/socket.io/0.9.10/socket.io.min.js', async: true },
{ src: 'plugin/multiplex/client.js', async: true },
{ src: 'plugin/multiplex/master.js', async: true },
]
// { src: 'plugin/search/search.js', async: true, condition: function() { return !!document.body.classList; } }
});
Run Code Online (Sandbox Code Playgroud)
显然,我去http://revealjs.jit.su/token获取令牌和秘密,客户端机密为空,因此无法自行控制演示文稿.但是,当我转到主服务器中的另一张幻灯片时,尽管配置了这样做,客户端根本不会关注.主服务器和客户端都在XAMPP下本地托管(我也尝试使用节点静态托管主服务器,但结果相同).
有谁知道如何解决这个问题?任何帮助深表感谢!
小智 1
您必须设置一些额外的依赖项(以使套接字请求真正起作用)
{ src: 'http://revealjs.jit.su/socket.io/socket.io.js', async: true },
{ src: 'plugin/multiplex/client.js', async: true },
{ src: 'plugin/multiplex/master.js', async: true }
Run Code Online (Sandbox Code Playgroud)
确保您的插件文件夹确实包含 Multiplex 文件!