【发布时间】:2021-05-22 14:06:33
【问题描述】:
我的服务器是使用 SocketIO 用 nodeJS + Typescript 编写的,这是一个在线聊天应用程序,但我无法使用 TypeScript 传输库中提供的回调
如何正确调用回调?下面的代码会报错
const { addMember, getMember, deleteMember, getMembers } = require('./members')
const app = require('express')()
const http = require('http').createServer(app)
const io = require('socket.io')(http)
const cors = require('cors')
const PORT = process.env.PORT || 5000
interface Date {
name: string,
room: string
}
declare type MyHandler = (myArgument: string) => void;
app.use(cors())
io.on('connection', (socket: any) => {
console.log("User connected");
socket.on('login', ({ name, room }: Date, callback) => {
console.log("User");
const { user, error } = addMember(socket.id, name, room)
if (error) return callback(error)
socket.join(user.room)
socket.in(room).emit('notification', { title: 'Кто то вошел', description: `${user.name} присоеденился к нам` })
io.in(room).emit('users', getMembers(room))
callback()
})
})
错误
参数“回调”隐含的类型为“任意”。
【问题讨论】:
-
您能否以文本而不是图像的形式提供您的代码。您能否将收到的错误信息作为文本提供?
-
@ErangaHeshan 当然
-
能否补充一下如何创建socket和socket-io库的import语句?
-
@ErangaHeshan 当然
标签: javascript node.js typescript sockets socket.io