RxJS in Angular – Make your code more Reactive and Declarative

Introduction In previous post, we started with the basics of RxJS and observables. We saw few examples of creating observables from existing data and various RxJS operators to transform, filter and process observables. Today, we’ll build upon those learning and see how to work with HTTP data using RxJS. If you haven’t already you can … Read more

RxJS in Angular – Basics

Introduction RxJS, or Reactive Extensions for JavaScript, is Observables implementation for JavaScript. RxJS is a library for composing async and event-based progress by observable sequences. Examples Production-lines, airport baggage conveyor belt, a stream etc. With Reactive programming, we create our entire app by defining the various streams and the operations that get performed on those … Read more

HTML5 – Canvas Basics (with Angular)

Introduction In old days of browsers, Flash/Silverlight likes plugins were used to support rich graphics in browsers. With HTML5, the platform gets native support for the two types rich contents: In this post, our focus will be the Canvas. I’ll be using Angular for JavaScripting, however the concepts are same if you use some other … Read more

Angular – Notifying the Component of User Changes

Introduction In earlier post, we saw how to communicate in and out of components using input/output properties. Another approach we learned was use of template reference variable and @ViewChild decorator to access elements/components on template and call methods on it. You can check this article for details. Today, we’ll learn how to notify the component … Read more

Angular – ViewChild and TemplateReference Variable

Introduction In earlier post, we saw how to communicate in and out of components using input/output properties. In this post we’ll explore another way to access the public properties and methods of a child components. This could be useful for different use cases. We’ll learn about using Template Reference Variable and/or @ViewChild() decorator. ViewChild/ViewChildren Selector … Read more

OpenAPI in .NET Core

Introduction Correct API documentation is essential. Documentation can be generated from an OpenAPI specification. An OpenAPI specification describes the capabilities of our API, and how to interact with it. It’s standardized, and in JSON or YAML format. What is Swagger OpenAPI specifications and Swagger specifications are the same thing. Swagger is a set of Open … Read more

Angular – Transform Data with Pipes

Introduction We use pipe for transforming bound properties before displaying them in a view. Angular provides us with few built-in pipes e.g. date, number, decimal, percent, currency, json etc. This time, we want to build our own custom pipe. Use Case Build a custom pipe which replaces ‘-‘ character with a space ‘ ‘. It … Read more

Angular – Wrapping Third-party libraries

Introduction It is very common in web applications that we’ll want to use third-party libraries or components. Let’s see how we can take something like that and turn it into an injectable service in Angular. If you are new to angular, you can check previous posts for the background information. toastr For demo, we’ll use … Read more

Angular – Nested Components

Introduction Components are building blocks of angular applications. Splitting the functionality in smaller components is something very common in angular applications development. In this post we will learn about nested components and discover how to establish communication between nested component and its container component using two useful angular directives @Input and @Output. We’ll be using … Read more

Angular – Working with Data

Introduction In previous posts, we’ve started with angular basics and created an angular application. We learned that an Angular application is an interaction of the following Angular artifacts ComponentsServicesDirectivesPipesModules We’ll continue our learning and today we’ll see few more examples. We’ll learn about angular services and then use the service in component to work with … Read more