javascript - SignalR 多客户端事件处理
问题描述
一般来说,对于 javascript、signalR 和 c# 来说都是非常新的。
我在客户端有 2 个函数,我想在不同的时间调用它们,但我只能触发 1 个函数。
Javascript部分:
var connection = new signalR.HubConnectionBuilder().withUrl("/signalRHub").build();
connection.on("DisplayCardEvent", function (message) {
document.getElementById("EventMessage").innerHTML = message;
});
connection.on("DisplayCardInfo", function (idCode, givenName, surName){
document.getElementById("IdCode").innerHTML = idCode;
document.getElementById("GivenName").innerHTML = givenName;
document.getElementById("SurName").innerHTML = surName;
});
connection.start().catch(err => console.error(err.toString()));
html代码:
<div id="EventMessage"></div>
<div id="IdCode"></div>
<div id="GivenName"></div>
<div id="SurName"></div>
当我打电话时在服务器端:
_hubcontext.Clients.All.SendAsync("DisplayCardEvent", eventName);
它通过替换 div 框 EventName 中的内容完美触发,但是当我调用时:
_hubcontext.Clients.All.SendAsync("DisplayCardInfo", idCode, givenName, surName);
客户端的事件永远不会触发。检查浏览器时,它仅将第一个显示为它侦听的事件。
编辑:设法解决问题。问题是我用来运行应用程序的浏览器之前缓存了 javascript 文件。当我添加第二个功能时,它从未在浏览器端更新。解决方法是简单地删除浏览器缓存。
解决方案
推荐阅读
- c# - C# Selenium 函数获取用户输入并单击包含“”的 xpath 文本?
- ionic-framework - 离子 SASS 变量似乎不起作用
- python - 将条形图转为正态分布
- java - YAML 映射键读取不正确
- python - CNN Pytorch 错误:输入类型(torch.cuda.ByteTensor)和权重类型(torch.cuda.FloatTensor)应该相同
- javascript - Ag-Grid 行组渲染错误
- function - Julia 模块调用用户定义函数
- javascript - VisualVM v1.4.4 中的 OQL - 获取类的字段名称
- swift - 我将如何动态添加适量的单元格并在其中显示视频
- python - (vowpal wabbit) 处理新上下文的上下文强盗