Coder Social home page Coder Social logo

angular-services's Issues

Argument of type '(data: Reader[]) => Reader[]' is not assignable to parameter of type '(value: Reader[] | BookTrackerError) => void'

Sir,
I am going through your Pluralsight course on Angular Services, about to complete 5. Demo: Abstracting Away HTTP Error, after completing the required coding for this, I got this below compilation error. Also below are the code portions on dashboard component and data service class. Kindly help.
------ Error ------
โˆš Browser application bundle generation complete.

Error: src/app/dashboard/dashboard.component.ts:31:11 - error TS2769: No overload matches this call.
The last overload gave the following error.
Argument of type '(data: Reader[]) => Reader[]' is not assignable to parameter of type '(value: Reader[] | BookTrackerError) => void'.
Types of parameters 'data' and 'value' are incompatible.
Type 'Reader[] | BookTrackerError' is not assignable to type 'Reader[]'.
Type 'BookTrackerError' is missing the following properties from type 'Reader[]': length, pop, push, concat, and 26 more.

31 (data: Reader[]) => this.allReaders = data,
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

node_modules/rxjs/internal/Observable.d.ts:54:5
54 subscribe(next?: (value: T) => void, error?: (error: any) => void, complete?: () => void): Subscription;
~~~~~~~~~
The last overload is declared here.

------ Dashboard component ------
...
this.dataService.getAllReaders()
.subscribe(
(data: Reader[]) => this.allReaders = data,
(err: BookTrackerError) => console.log(err.frendlyMessage),
() => this.loggerService.log('All done getting readers!')
);
...
------ Data service ts ------
getAllReaders(): Observable<Reader[] | BookTrackerError> {
return this.http.get<Reader[]>('/api/errors/500')
.pipe(
catchError(this.handleError)
);
}

private handleError(error: HttpErrorResponse): Observable {
let dataError=new BookTrackerError();
dataError.errorNumber = 100;
dataError.message = error.statusText;
dataError.frendlyMessage = 'An error occured retrieving data.';
return throwError(dataError);
}

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.