I am creating a shopping cart, I need to declare a global variable and want to change the variable from different component.
Asked
Active
Viewed 444 times
1
-
1Possible duplicate of [Angular 2 - Whats the best way to store global variables like authentication token so all classes have access to them?](http://stackoverflow.com/questions/33598153/angular-2-whats-the-best-way-to-store-global-variables-like-authentication-tok) – Günter Zöchbauer Mar 24 '16 at 06:07
1 Answers
0
Steps –
- Create Global Variables.
- Import and Use the Global Variables in the Component.
- Result
Create Global Variables :- “app.global.ts”
import { Injectable } from '@angular/core';
@Injectable()
export class AppGlobals {
readonly baseAppUrl: string = 'http://localhost:57431/';
readonly baseAPIUrl: string = 'https://api.github.com/';
}
Import and Use the Global Variables in the Component:- “user.component.ts”
import { Component, Injectable} from '@angular/core';
import { CommonModule } from '@angular/common';
import { HttpModule, Http } from '@angular/http';
import { UserService } from '../service/user.service';
import { AppGlobals } from '../shared/app.globals';
@Component({
selector: 'user',
templateUrl: './user.component.html',
styleUrls: ['./user.component.css'],
providers: [UserService, AppGlobals]
})
export class UserComponent {
//USERS DECLARATIONS.
users = [];
//HOME COMPONENT CONSTRUCTOR
constructor(private userService: UserService, private _global: AppGlobals) { }
//GET USERS SERVICE ON PAGE LOAD.
ngOnInit() {
this.userService.getAPIUsers(this._global.baseAPIUrl + 'users/hadley/orgs').subscribe(data => this.users = data);
this.userService.getAppUsers(this._global.baseAppUrl + 'api/User/GetUsers').subscribe(data => console.log(data));
}
}
//END BEGIN – USERCOMPONENT
“user.server.ts” :-
import { Injectable, InjectionToken } from '@angular/core';
import { Http, Response } from '@angular/http';
import 'rxjs/add/operator/map';
//BEGIN-REGION - USERSERVICE
@Injectable()
export class UserService {
constructor(private _http: Http) {
}
getAPIUsers(apiUrl) {
return this._http.get(apiUrl).map((data: Response) => data.json());
}
getAppUsers(apiUrl) {
return this._http.get(apiUrl).map((data: Response) => data);
}
}
//END BEGIN – USERSERVICE`enter code here`

estin sunny koothoor
- 201
- 1
- 10