Итак, я хотел бы знать, как создавать пользовательские события в node.js, и я нажимаю на стену. Я уверен, что я неправильно понимаю, как работает экспресс, и как работают node.js.
https://creativespace.nodejitsu.com Это приложение.
Когда пользователь создает новую "активность" (что-то, что произойдет много раз), они отправляют запрос POST. Затем в моем маршруте, если этот POST завершится успешно, я хотел бы передать событие, которое сообщает socket.io создать новое пространство имен для этого действия.
В файле маршрута:
var eventEmitter = require('events').EventEmitter;
// Tell socket.io about the new space.
eventEmitter.emit('new activity', {activityId: body.id});
И socket.io:
// When someone creates a new activity
eventEmitter.on('new activity', function (data) { // this gives and error
var newActivity = '/activity?' + data.activityId;
io.of(newActivity).on('connection', function (socket) {
// Socket.io code for an activity
});
});
Итак, ошибка, которую я получаю, НЕ МОЖЕТ ПРИВЕСТИ К МЕТОДУ OF UNDEFINED, и это относится к тому, что будет в строке 2 в socket.io выше. Я думаю, что я использую свои требования, может быть... или я не совсем понимаю, как работают события.
Любая помощь, даже ссылка на хорошее чтение на событиях node.js будет качаться!
Спасибо!!!