有人可以告诉我开菲尔在这段代码里做什么吗?

问题描述

我刚开始使用WebSockets,偶然发现了这段代码

似乎我无法弄清开菲尔(流功能)的作用是什么?我了解它就像rxjs一样,但不是全部?

有人可以向我解释吗? :D

非常感谢。

export const SocketApi = new (class {
  private readonly socket = new Socket(apiUrl); //apiUrl = ws://localhost:3000

  readonly incoming = stream<IncomingMessage,never>(emitter => {
    this.socket.addEventListener('message',({ data }) => {
      const message = safeParseJson<IncomingMessage>(data);
      if (message == null) {
        console.error(`Erroneous message from ${this.socket.url}:\n${data}`);
        return;
      }

      emitter.emit(message);
    });
  });

  requestFreqRange(freqStart: number,freqStop: number): void {
    console.log('reqFreqRange');
    const message: OutgoingMessage = {
      messageType: 'requestFreqRange',freqStart,freqStop,};
    this.socket.send(JSON.stringify(message));
  }

  requestRefLevel(refLevel: number): void {
    const message: OutgoingMessage = {
      messageType: 'requestRefLevel',refLevel,};
    this.socket.send(JSON.stringify(message));
  }
})();

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)