类型'void'Angular 6上不存在属性'pipe'

Jet*_*Bro 1 rxjs typescript angularfire angularfire2 angular

我不明白问题的原因.我的代码来自ServiceFile,我得到错误

  1. 类型'void'上不存在属性'pipe'.
  2. 类型"{}"上不存在属性"$ key".

https://i.imgur.com/0m0HmKi.png

import { Injectable } from '@angular/core';
import { AngularFireDatabase, AngularFireList } from '@angular/fire/database';
import { switchMap } from 'rxjs/operators';
import { Observable } from 'rxjs';
@Injectable({
  providedIn: 'root'
})
export class CoursesService {

  constructor(private af: AngularFireDatabase) { }

  findAllCourses(): AngularFireList<any> {
    return this.af.list('courses');
  }

  findCourseDtl(coursUrl:string){
   this.af.list('courses', ref => ref.orderByChild('url').equalTo(coursUrl)).valueChanges()
  }

  findLessonsForCours(coursUrl:string): Observable<any>{
    return this.findCourseDtl(coursUrl)
   .pipe(switchMap(course => this.af.list('lessonsPerCourse/'+ course.$key ).valueChanges()));


}

}
Run Code Online (Sandbox Code Playgroud)

zma*_*mag 5

您没有在findCourseDtl函数中返回任何值.

这可能是你的意图:

findCourseDtl(coursUrl:string){
  return this.af.list('courses', ref => ref.orderByChild('url').equalTo(coursUrl)).valueChanges()
}
Run Code Online (Sandbox Code Playgroud)