123ArticleOnline Logo
Welcome to 123ArticleOnline.com!
ALL >> Technology,-Gadget-and-Science >> View Article

How To Have Various Environments With Angular Cli Future (angular 7)

Profile Picture
By Author: Sagar rollins
Total Articles: 2
Comment this article
Facebook ShareTwitter ShareGoogle+ ShareTwitter Share

As a result of this, we would need builds of different configurations: Different server URLs, different constants, different logging options, etc.

Angular CLI offers an environment feature that allows running builds targeted at specific environments for specific requirements. For instance, here is how you would run a build for production:

ng build — env=prod // up to Angular 5

Update: With Angular 6 and Above, the command is now:

ng build — configuration=production // new versions

The prod flag in the above code refers to the prod (production in v6 and above) property of the environments section of .angular-cli.json before v6:(now angular.json in v6 and above), which has two options by default: dev and prod

“environments”: {
“dev”: “environments/environment.ts”,
“prod”: “environments/environment.prod.ts”
}

You can add as many environments as you need here and name them accordingly. For instance, if you need a assesment build option, just add the following entry in .angular-cli.json:

“environments”: {
“dev”: “environments/environment.ts”,
...
... “prod”: “environments/environment.prod.ts”,
“qa”: “environments/environment.qa.ts”
}

For v6 and above, angular.json environments are now called configurations. Here is how to add a new qa environment after v6:

“configurations”: {
“production”: { … },
“qa”: {
“file replacements”: [
{
“replace”: “src/environments/environment.ts”,
“with”: “src/environments/environment.qa.ts”
}
]
}
}

Then you have to create the actual file environment.qa.ts in the environments directory.

Here is what the default environment.ts file for dev looks like:

// The file contents for the current environment will overwrite these during build.
// The build system defaults to the dev environment which uses `environment.ts`, but if you do
// `ng build — env=prod` then `environment.prod.ts` will be used instead.
// The list of which env maps to which file can be found in `.angular-cli.json`.
export const environment = {
production: false
};

The above environment object is where you would add any environment specific property. For instance, let’s add a server URL:

export const environment = {
production: false,
serverUrl: “http://dev.server.companyName.com"
};

Then all you have to do to provide a different URL for QA is to define that same property with the right value in environment.qa.ts:

export const environment = {
production: false,
serverUrl: “http://qa.server.companyName.com"
};

Now that your environments are defined, how do you use those properties in your code? Easy enough, all you have to do is import the environment objects as follows:

import {environment} from ‘../../environments/environment’;
@Injectable()
export class AuthService { API_URL: string = environment.server Url + ‘/theUrlForAPI’ ;

Then when you run a build for QA, Angular CLI is going to use environment.qa.ts to read the environment.server Url property value and you’re all set to deploy that build to the QA environment.

My Name is Prateek Pandey. I am a Developer, as well as consultant, and trainer for Angular where I help web developers learn and ease the stuff.

For more information click here -: https://letsmobility.com/

Total Views: 438Word Count: 415See All articles From Author

Add Comment

Technology, Gadget and Science Articles

1. Powering A Repricing Engine With Live Marketplace Data
Author: WebDataScraping.us

2. Benchmarked 100 Maldives Resorts Via Ota Data
Author: Actowiz Solutions

3. Retail Data Engineering Best Practices For Ai Projects
Author: brainbell10

4. Powerful Nlp & Web Scraping For Job Data Extraction Methods
Author: Retail Scrape

5. Predictive Analytics Using Scraped Market Data
Author: REAL DATA API

6. Reducing Food Waste With Ai: Pricing & Markdown Data
Author: WebDataScraping.us

7. Improve Price Monitoring Software For Retailers Strategies
Author: Retail Scrape

8. How To Deploy Erpnext On Ubuntu Server: The Ultimate 2026 Guide
Author: VPS9

9. Discover The Allmenus Api For Restaurant Menu Analytics
Author: Retail Scrape

10. Why Surface Preparation Matters For Strong Adhesive Bonds
Author: Kohesi Bond

11. Timing Technologies Honoured With The "excellence In Continuous Integration And Delivery" Award
Author: Timing Technologies

12. Scrape Tender Data Intelligence For Smes
Author: REAL DATA API

13. It Management Courses Uk: Why They're Essential For Today's Technology Leaders
Author: IT Leaders Ltd

14. Quick Commerce Price And Digital Shelf Analytics
Author: iwebdatascraping

15. Growth Can Make Your Business Slower: How To Eliminate The Fragmentation Tax With Erp In Saudi Arabia
Author: Focus Softnet

Login To Account
Login Email:
Password:
Forgot Password?
New User?
Sign Up Newsletter
Email Address: