Angular Js Service Overview
Angular js services are getting created with @injectable decorator
e.g.
@Injectable({
providedIn: 'root'
})
Services are getting used to share data between multiple components and its also getting used to provide data to components.
Services can be be passed in providers of module or component so dependency will get injected.
Lets start with building angularjs app and adding service in it.
Prerequisites
Angularj JS new version is using nodejs for setting up application and for running applicaion you will also need any code editor tool.
For current setup we are using visual code studio
Kindly down load latest version of nodejs and visual code studio on your machine and complete setup
Node Installation
1 Go to this site and download latest version of node js
2) Once installed open command prompt and type “node”
you will be able to see version on node js that means nodejs installed

Install Visual Studio
1 Go to this site and download latest version of
https://code.visualstudio.com/
2. Once installed on windows go to search menu and type visual you will be able to see its installed like below screenshot

3.Open Application and you will be able to see below screen

4) Select folder from file menu for your project
5) Open Terminal from Terminal option

Install Angular cli
Run below command
npm install -g @angular/cli
once its installed type below command in terminal to verify installation

Create a workspace and initial application
Run below command
ng new my-app
it will ask for angular routing =>select yes
then select css as style sheer language like below screenshot

Press Enter and it will generate your project
in below diagram 1) Creating html and components from schematics 2) DOwnloading required packages you can see under node_modules folder

Run the application
Run below command
traverse to application folder
cd my-app
run below command to start and open application
ng serve –open
this command will compile app and launch it with webpack on http://localhost:4200/

Congrats your first application is running and working fine

Creating Hello World
In angular data binding is happening between html and component classes .
Here we will declare one variable in component file and same will be visible on UI .
- Delete everything from app.component.html.

2. Declare variable in app.component.ts

app.component.ts
import { Component } from '@angular/core';
@Component({
selector: 'app-root',
templateUrl: './app.component.html',
styleUrls: ['./app.component.css']
})
export class AppComponent {
title = 'my-app';
message = 'Hello World';
}
3. Now add binding between UI and component with scriplet tag

app.component.html
<div>
<h1>{{message}}</h1>
</div>
4. Run below command to compile app
ng serve

5. Open browser and enter http://localhost:4200/

Your application is running and rented “Hello World” in browser. Same way you can initialize variables and pass data from component to UI.
Now we have created hello world application with single component and now we will create additional component which will be useful to add re usability.
Create Service
Use below command to create component
ng generate service teservice
This command will create below folder structure .This will create two files one is service and another one is test case for it

Edit testservice.service.ts
import { Injectable } from '@angular/core';
@Injectable({
providedIn: 'root'
})
export class TeserviceService {
constructor() { }
print()
{
console.log('calling webservice');
}
}
Add service in app.component.ts and inject in constructor and call print method of service
app.component.ts
import { Component } from '@angular/core';
import { TeserviceService } from './teservice.service';
@Component({
selector: 'app-root',
templateUrl: './app.component.html',
styleUrls: ['./app.component.css'],
provider : [ TeserviceService]
})
export class AppComponent {
constructor(private test : TeserviceService) {
this.test.print();
}
title = 'newserviceapp';
}
Edit app.component.html
Below is code for helloworld.component.html
<h1>Using services in Angular JS</h1>
Run below command to compile app
ng serve

Open App in browser
use below url to open in browser

Now you can see service is get called and it printed message on console
GIT REPO:
https://github.com/letsblogcontent/AngularJS/tree/master/newserviceapp
Video Tutorial