node.js - “on”和“emit”功能是干什么用的?
问题描述
我是 Nodejs 的新手,实际上我仍然不了解两种方法的任务:socket.io 中的“on”和“emit”
对不起。让我猜猜:
“on”方法是从客户端/服务器监听
"emit" 将事件广播到客户端/服务器
问题是:
1.我们可以在内置事件之外创建自定义事件吗?
socket.io 适用于什么?
解决方案
是的,您可以创建自定义事件并“发出”然后使用“on”检测它们,Socket.IO 是一个库,可以在浏览器和服务器之间实现实时、双向和基于事件的通信。它包括:一个Node.js,可能我不清楚你关于“Socket.IO 申请什么”的问题的第二部分,但我想如果你会谷歌,你可能会对图书馆有更多的了解。
`//in node js i.e. server side
socket.on('has connected', function (username) {
console.log('connected Udsfh');
username = username;
users.push(username);
console.log(username);
io.emit('has connected', users);
});`
`//client side--just a sample to catch the emitted event and use it
var socket = io();
socket.on('has connected', function (users) {
for (var i = 0; i < users.length; i++) {
$("users").append("<li><b>" + users[i] + "</b></li>");
}
});
推荐阅读
- python - 连接两个数据框并将唯一值保存为 txt
- python - python - 在返回时将值附加到列表
- python - 有没有办法进一步减少 Python 可执行文件大小/使用 pyinstaller 以及 poppler 和 pytesseract?
- javascript - 在播种器脚本中播种 MongoDb NodeJS
- android - 按下按钮时如何增加按钮大小?请帮我
- node.js - 如何使用 Multer 修复 req.file 未定义?
- spring-boot - Advice.OffsetMapping.Sort 类型的方法 by(String) 未定义
- angular - Angular:如何根据元素大小用物品填充容器,然后在容器装满后停止?
- reactjs - 开玩笑 你的测试套件必须至少包含一个测试
- python - 使用 Openpyxl 在 Excel 中创建 3 个表