Я новичок в Node.js.
Недавно я хотел бы построить модульную систему на основе класса es6.
Я пытаюсь обернуть модуль ws в класс, и вот прототип моего кода:
const WebSocket = require('ws')
export default class WebSocketServer {
constructor(port = 9876) {
this.wss = new WebSocket.Server({
port,
perMessageDeflate: false
})
this.wss.on('connection', (function _connection(ws) {
this.connection(ws)
}).bind(this))
}
connection(ws) {
return new Promise(function (resolve, reject){
ws.on('message', function _incoming(message){
console.log('received: %s', message)
})
ws.send('Welcome!', function ack(err){
if(err) {
reject(`Connection error: ${err}`)
}
else {
resolve('Connection created.')
}
})
})
}
}
Несколько вопросов:
1. Интересно, моя логика верна?
2. Есть ли простой способ вместо этого связать 'this' с функцией обратного вызова?
Спасибо!