Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 20.08.2019, 21:50
Аспирант
Отправить личное сообщение для Иса Мирзоев Посмотреть профиль Найти все сообщения от Иса Мирзоев
 
Регистрация: 15.04.2019
Сообщений: 72

Помогите ПЛИЗ новичку с EventEmitter
Здравствуйте. Недавно изучаю Node.js. Просьба объяснить построчно, что происходит на каждой строке кода. Проблемы вызывает .emit и .on, из документации я не разобрался, что они делают. То, что со стандартным js связано, вроде как я уловил.

const EventEmitter = require("events") //цепляемся к модулю events
class Logger extends EventEmitter{ //наследование нового класса от того, к чему мы "прицепились" строчкой выше
    log(message) // объект log, который является "ключом" к функции и названием функции одновременно
    {this.emit("message", `${message} ${Date.now()}`)} // Не понятно 
    }
    
    const logger = new Logger() //переменная из класса, тут понятно
    
    
    logger.on("message", data=>{ //Тут тоже не понял, к чему слово "message", а дальше вроде ясно: указываем, что будет выводится в 
    //консоль инфа, которую задаем строкой ниже
        console.log(data)
    } )
    logger.log("Прослушано") //обращаемся к функции из второй строки для выводного сообщения

Последний раз редактировалось Иса Мирзоев, 20.08.2019 в 22:07.
Ответить с цитированием
  #2 (permalink)  
Старый 20.08.2019, 23:38
Аспирант
Отправить личное сообщение для Иса Мирзоев Посмотреть профиль Найти все сообщения от Иса Мирзоев
 
Регистрация: 15.04.2019
Сообщений: 72

Значит .on добавляет событие, а .emit его вызывает. Становится яснее. Потыкал попроще события и заработало. Просто в курсе, по которому я учу Node был вот этот слегка накрученный код (лично для меня, плохо знающего ES6). Попробую, спс. Вроде прояснилось))
Ответить с цитированием
  #3 (permalink)  
Старый 21.08.2019, 00:11
Аспирант
Отправить личное сообщение для Иса Мирзоев Посмотреть профиль Найти все сообщения от Иса Мирзоев
 
Регистрация: 15.04.2019
Сообщений: 72

Спасибо, гляну) А зачем наследоваться? Нельзя везде использовать один и тот же модуль, вместо того, чтобы свойства модуля наследовать в классы и работать с классами? Я пока только 1 причину вижу - в наследуемый класс можно вставлять свой функционал, дополнительный плюс к унаследованному. Хотя по идее через прототип можно и в первоначальный модуль добавить требуемый функционал. Смысла не вижу в общем в наследовании на этом этапе моего понимания языка(
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Не могу найти ошибку. помогите плиз uuusseerr Серверные языки и технологии 1 26.10.2016 10:44
Помогите новичку плиз!!!!!!!!!!!!! Юрий Манылов Общие вопросы Javascript 1 18.12.2012 11:37
Помогите новичку! Анатолий Саратовцев Events/DOM/Window 7 04.08.2012 17:46
Помогите плиз mesq Оффтопик 6 28.06.2010 04:58
Помогите новичку с выпадающим списком interest Элементы интерфейса 5 19.05.2010 13:15