【问题标题】:My function is not running and I don't know why? (Angular 8) I get no errors我的功能没有运行,我不知道为什么? (Angular 8)我没有错误
【发布时间】:2020-02-04 13:42:45
【问题描述】:

我有以下功能:

Join(movementId: string, movement: Movement, userId: string) {
  let fetchedUserId: string;
  let userList = [];
  fetchedUserId = userId;
  userList = movement.userList;
  userList.push(fetchedUserId);
  movement.userList = userList;
  console.log('kkk');
  console.log(movement);
  return this.auth.token.pipe(
    take(1),
    switchMap(token => {
      console.log('kk');
      return this.http.put(
        `https://gridt-85476.firebaseio.com/movements/${movementId}.json?auth=${token}`,
        { ...movement, userList, id: null }
      );
    })
  );
}

我是 Angular 的初学者,正在尝试制作一个小应用程序。我现在不会解释该应用程序,因为它不是必需的。当您在应用程序中加入事物时,此功能应该添加到用户列表中。问题是在管道之后它停止工作,我不知道为什么。我检查了该功能所需的所有信息,并且它正确接收了它。我没有收到任何错误,没有任何警告。老实说,我被困住了。这是完整代码https://github.com/GridtNetwork/gridt-client/tree/Andra/gridt/src请帮助

【问题讨论】:

    标签: angular typescript


    【解决方案1】:

    RxJS 中调用Join() 不会使可观察序列起飞。你必须做Join().subscribe(data => console.log(data))。你这样做吗?

    【讨论】:

      【解决方案2】:

      你的函数也返回一个 observable,我想你应该为它提供适当的返回类型,比如

      Join(movementId: string, movement:Movement, userId: string): observabel<any>

      【讨论】:

        猜你喜欢
        • 2022-08-21
        • 2017-04-01
        • 1970-01-01
        • 2016-08-27
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2022-10-23
        • 1970-01-01
        相关资源
        最近更新 更多