Javascript RxJs:抛出错误不会';当Observable以.fromEvent开头时,不允许.retryWhen

Javascript RxJs:抛出错误不会';当Observable以.fromEvent开头时,不允许.retryWhen,javascript,angular,rxjs,Javascript,Angular,Rxjs,我有一个由“输入”事件启动的可观察对象。每当我想抛出一个错误retryWhen它RxJs不允许我重试可观察的。这似乎特别发生在.fromEvent上 我想要的是能够抛出一个错误,而无需完成可观察的操作,捕获该错误并执行一些代码,比如日志记录或DOM操作 控制台给我未捕获的类型错误:a.addListener不是函数 每当我尝试运行代码时 示例代码: var userIdInputStr = Rx.Observable .fromEvent(document.querySelector('#i

我有一个由“输入”事件启动的可观察对象。每当我想抛出一个错误retryWhen它RxJs不允许我重试可观察的。这似乎特别发生在.fromEvent上

我想要的是能够抛出一个错误,而无需完成可观察的操作,捕获该错误并执行一些代码,比如日志记录或DOM操作

控制台给我
未捕获的类型错误:a.addListener不是函数
每当我尝试运行代码时

示例代码:

var userIdInputStr = Rx.Observable
  .fromEvent(document.querySelector('#inputUserID'), 'input')
  .map(U.getTargetValue)
  .map(_ => {
    throw 'Error';
  })
  .retryWhen(e => {
    e.pipe(
      e.tap(console.log('Something went wrong...')),
      e.delay(500)
    );
  })
  .subscribe(v => {
    console.log('Got value, nothing happened.');
  });

您没有从
retryWhen
的回调返回任何内容。当您使用
{…}
时,这会产生一个新的闭包,因此如果您只想返回
e.pipe()
您需要使用
.retryWhen(e=>e.pipe(…)
或包含
返回
关键字,我不应该在一天结束时发布这些内容。。。然而,它仍然给我同样的错误。。。