套接字 I.o 不会自动更新



我正在使用套接字,当我发送POST/envitemperature时,我的网站上没有自动更新。我做错了什么?

node . js

app.post('/EnviaTemperatura', function(req, res){
    temperatura = req.body.temp;
    console.log(temperatura);
    res.send('Temperatura: ' + temperatura);
});
io.on("connection", function(socket) {
    socket.emit('RecebTemp', temperatura);
});

<div class="col-xs-9 text-right">
    <div class="huge"><span id="EnviaTemp">0</span> ºC</div>
    <div>Temperatura no Interior da casa</div>
</div>
<script>
    var socket = io();
        socket.on('RecebTemp', function (temperatura) { 
            document.getElementById("EnviaTemp").innerHTML = temperatura;
        });
</script>

在我的情况下,只有当我刷新页面时才会更新。但是我不想刷新整个页面,只刷新那个DIV,因为屏幕上的其他元素需要一段时间才能加载。

会是什么呢?

试试这个:

'use strict';
const EventEmitter = require('events');
class MyEmitter extends EventEmitter {}
const temperatureSender = new MyEmitter();

,然后在app.post:

temperatureSender.emit( 'sendTemp', temperature);

和io.on('connection',…):

temperatureSender.on('sendTemp', function(temperature) {
    socket.emit('RecebTemp', temperature);
});

相关内容

  • 没有找到相关文章

最新更新