我对node.js非常陌生,但实际上我只想通过学习语言来实现一个简单的事情。
我想创建一个网页,通过特定“div”中的代码,可以即时热切换到当前正在查看该页面的用户。 (即div包含一些文本,但随后图像会替换它。) 理想情况下,交换将由网页管理员通过点击按钮手动执行,或者某些代码在服务器上触发。网页的常规查看者无法执行此操作 - 他们只能看到页面上的实时更改。
现实生活中的例子:
现场互联网广播是无线播放,因此“div”包含“无线”文字。 当广播播出时,代码的实时热交换发生,网页的观众现在看到“div”中的html5广播播放器。
对于node.js新手来说,最简单的方法是什么?
非常感谢:)
答案 0 :(得分:17)
看一下Socket.IO http://socket.io/#how-to-use
当服务器决定广播变更用途时:
io.sockets.emit('update-msg', { data: 'this is the data'});
首先连接socket.io,然后等待“update-msg”事件并更新你的dom:
var socket = io.connect('http://localhost');
socket.on('update-msg', function (msg) {
console.log(msg);
$('#mydiv').html(msg.data)
});
答案 1 :(得分:5)
我使用RequireJS和Node.js创建了一个系统/方法来实时更新(热重新加载)前端代码。我确定它适用于React和Backbone。你可以在这里阅读:
https://medium.com/@the1mills/hot-reloading-with-react-requirejs-7b2aa6cb06e1
自己这样做的基本步骤: