javascript - 如何使用 express 显示实时变量 node.js
问题描述
因此,我一直在尝试实时显示我的变量“pares”、“impares”、“ninguno”,如下图所示,我使用了 app.get 并在其中使用了 response.write 来打印 de 变量,但问题是如果我要更新变量,每次都需要重新加载页面,有没有实时打印?,在此处输入图像描述
var express = require('express');
var bodyParser = require('body-parser');
var app = express();
var reload = require('reload');
var http = require('http');
var server = http.createServer(app);
var impares = 0;
var pares = 0;
var ninguno =0;
app.use(bodyParser.urlencoded({extended : true}));
app.use(bodyParser.json());
app.post('/arduino', function(request, response) {
console.log("Arduino asking data");
var stringInform = (Object.keys(request.body)).toString();
var stringA = stringInform.split("|");
var dato1= parseInt(stringA[0],10);
var dato2 = parseInt(stringA[1],10);
response.send('Hello Arduino');
Parimpar(dato1,dato2);
response.end();
console.log(dato1);
console.log(dato2);
console.log(ninguno);
});
app.get('/arduino', function(request, response) {
response.write('PARES:'+ pares + ' '+ 'IMPARES:' + impares + ' ' + 'NINGUNO:'+ ninguno);
response.end();
});
app.listen(8080);
function Parimpar(c,i)
{
if (c%2 == 0 && i%2 == 0)
{
pares = pares +1;
// return pares;
}
else if (c%2 != 0 && i%2 != 0)
{
impares = impares + 1;
//return impares;
}
else
{
ninguno = ninguno +1 ;
//return ninguno;
}
}
解决方案
您可以使用 Web 套接字在值更新时发出事件。更简单的方法是设置一个 socket.io 网络服务器并向所有连接的值发出值。查看https://socket.io/
推荐阅读
- javascript - 如何将此 CodePen 代码集成到 Vue 中?
- php - 如何更新表中的多行?
- swift - 访问由不同类的代码创建的 UI 元素
- javascript - Kendo UI && JavaScript - 显示“YES”和“NO”
- c# - 如何使用 for 循环格式化 DataGrid 列
- javafx - JavaFX:使用 TextFormatter 从 TextField 中删除空格
- dask - 在 Singularity 容器中运行 Dask
- javascript - 表单的提交按钮不起作用。你能告诉我我做错了什么吗?
- java - 当控制器依赖于请求上下文时,使用 @WebMvcTest 对控制器进行单元测试不起作用
- html - 当加载器到达表单顶部时,表单位置正在改变