Angular 7无法读取未定义的属性“ map”

时间:2019-02-27 21:02:30

标签: angular material

我在使用mat-autocomplete异步时遇到了这个问题,我主要从这里尝试了几种解决方案,但即使这样我也没有成功。遵循我的代码...谢谢

component.ts

    filteredEmpresas: Observable<IEmpresaResponse>;
  empresasForm: FormGroup;

this.empresasForm = this.fb.group({
      empresaInput: null
    })

    this.filteredEmpresas = this.empresasForm.get('empresaInput').valueChanges
      .pipe(
        debounceTime(300),
        switchMap(value => this.appService.search({text: value}, 1))
      );

service.ts

    search(filter: {text: string} = {text: ''}, page = 1): 
  Observable<IEmpresaResponse> {

    return this.http.get<IEmpresaResponse>(this.apiURL + '/busca/'+filter.text)
    .pipe(
      tap((response: IEmpresaResponse) => {
        response.results = response.results
          .map(empresa => new Empresa(empresa.idEmpresa, empresa.nomeEmpresa, empresa.ativo));
        return response;
      })
      );
  }

class.ts

    export class Empresa {
    constructor(public idEmpresa: number, public nomeEmpresa: string, public ativo: Boolean) {}
  }

  export interface IEmpresaResponse {
    total: number;
    results: Empresa[];
  }

0 个答案:

没有答案