【问题标题】:Angular 2 RC4 RxJS CrashAngular 2 RC4 RxJS 崩溃
【发布时间】:2016-07-07 07:47:26
【问题描述】:

我有一段代码在最新的 Angular 2 更新之前运行良好。除其他外,它使用 Http 请求和 Observables。

我更新到 RC4,导入所有 RxJS 操作符(以确保它正常工作),我得到 Error: SecurityError: DOM Exception 18

知道为什么以及如何解决这个问题吗?

简化代码sn-p:

logIn(email: string, pass: string): Observable<boolean> {
  return Observable.create((observer: Observer<boolean>) => {
    let body = {
      email: email,
      pass: pass
    };

    this.http.post(this.origin + "/auth/logIn", JSON.stringify(body), this.requestArguments())
      .subscribe((res: Response) => {
        observer.next(res.json()["isLoggedIn"]);
        observer.complete();
      })
  })
}

在哪里

this.origin = window.location.origin + "/api"

奇怪的是:

Safari 抛出异常

Chrome 没有,但页面似乎卡住了

Firefox 工作正常。

所有这些都是零星的..有时有效,有时无效。

【问题讨论】:

  • DOMS Exception 18 主要是因为您没有从 localhost 服务器使用它。放在localhost上而不是直接打开。
  • 它在本地主机上,通过节点提供服务
  • 看看这篇文章 - tosbourn.com/…
  • 您的 Safari 浏览器是否设置为接受 cookie?
  • 你能把你的 package.json 贴在这里吗?

标签: typescript angular rxjs rxjs5


【解决方案1】:

所有 Angular RC 版本都依赖于相同的 rxjs 5.0.0 beta 6,所以我认为你看错了方向。你的代码虽然对我来说很奇怪。在创建函数中调用http?您的 http 响应包含一个 observable,为什么要尝试创建自己的 observable?如果你需要映射你的对象使用地图

【讨论】:

    猜你喜欢
    • 2023-03-17
    • 1970-01-01
    • 2016-11-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-03-20
    • 2017-06-11
    • 1970-01-01
    相关资源
    最近更新 更多