Свойство pipe не существует для типа «Подписка». - PullRequest
0 голосов
/ 31 октября 2018

У меня ошибка:

TS2339: свойство 'pipe' не существует для типа 'Подписка'

на линии, обозначенной ниже "ЗДЕСЬ"

import { Injectable } from '@angular/core';
import { HttpClient, HttpParams } from '@angular/common/http';
import { Observable } from 'rxjs';
import { Source } from '../model/source';
import { map } from 'rxjs/operators';
import { Entry } from '../model/entry';


@Injectable()
export class SourcesService {
    private readonly API_URL = 'https://localhost:44384';
    constructor(private http: HttpClient) { }

findEntries(
    sourceId: number, filter = '', sortOrder = 'asc',
    pageIndex = 0, pageSize = 3): Observable<Entry[]> {

    return this.http.get(`${this.API_URL}/api/entries`, {
        params: new HttpParams()
            .set('sourceId', sourceId.toString())
            .set('filter', filter)
            .set('sortOrder', sortOrder)
            .set('pageIndex', pageIndex.toString())
            .set('pageSize', pageSize.toString()),
        observe: 'response'
    }).subscribe((res: any) => {
        const counter = JSON.parse(res.headers.get('X-Pagination')).totalCount;
    }).pipe(   // <<<=========================================================== HERE
        map((res: any) => {
            res['playload'] = res;
            return res['playload'];
        })
    );
}

Окружающая среда:

Angular CLI: 7.0.3
Node: 10.13.0
OS: win32 x64
Angular: 7.0.1

1 Ответ

0 голосов
/ 31 октября 2018

Удалить подписку, которая не требуется.

Либо вы должны подписаться или использовать rxjs operators, а затем в конце использовать subscribe.

import { Injectable } from '@angular/core';
import { HttpClient, HttpParams } from '@angular/common/http';
import { Observable } from 'rxjs';
import { Source } from '../model/source';
import { map } from 'rxjs/operators';
import { Entry } from '../model/entry';


@Injectable()
export class SourcesService {
    private readonly API_URL = 'https://localhost:44384';
    constructor(private http: HttpClient) { }

findEntries(
    sourceId: number, filter = '', sortOrder = 'asc',
    pageIndex = 0, pageSize = 3): Observable<Entry[]> {

    return this.http.get(`${this.API_URL}/api/entries`, {
        params: new HttpParams()
            .set('sourceId', sourceId.toString())
            .set('filter', filter)
            .set('sortOrder', sortOrder)
            .set('pageIndex', pageIndex.toString())
            .set('pageSize', pageSize.toString()),
        observe: 'response'
    }).pipe( 
        map((res: any) => {
            res['playload'] = res;
            return res['playload'];
        })
    );
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...