[英]Countdown Timer Broadcast with Socket.io and Node.js
我正在使用Node.js構建我的應用程序的新版本。 在下面,您將找到我的獲勝者倒計時,其中console.log(counter)
的輸出需要與Socket.io一起廣播給所有客戶端。
var counter = 10;
var WinnerCountdown = setInterval(function(){
console.log(counter);
counter--
if (counter === 0) {
console.log("Congratulations You WON!!");
clearInterval(WinnerCountdown);
}
}, 1000);
我的Socket.IO代碼如下:
setInterval(() => {
wss.clients.forEach((client) => {
client.send(new Date().toTimeString());
});
}, 1000);
我應該怎樣替換new Date().toTimeString()
,以便它將顯示console.log的消息?
要向所有客戶廣泛投放,您可以使用io.sockets.emit('counter', counter);
。 這是一個腳本示例,可用於實現您想做的事情(我認為):
io.on('connection', function(socket){
var counter = 10;
var WinnerCountdown = setInterval(function(){
io.sockets.emit('counter', counter);
counter--
if (counter === 0) {
io.sockets.emit('counter', "Congratulations You WON!!");
clearInterval(WinnerCountdown);
}
}, 1000);
});
var socket = io();
socket.on('counter', function(count){
$('#messages').append($('<li>').text(count));
});
希望這會有所幫助,如果您有任何后續問題,請發表評論!
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.