Skip to content

Ability to specify different styling per environment #5803

@jstoppa

Description

@jstoppa

Bug Report or Feature Request (mark with an x)

- [ ] bug report -> please search issues before submitting
- [X] feature request

Versions.

@angular/cli: 1.0.0
node: 6.9.1
os: win32 x64

Desired functionality.

Ability to specify different styling per environment

Mention any other details that might be useful.

I’d like to have the ability to pass the styling when executing ng serve or ng build in the same way the environment parameter works (or… is it a way to do this already with angular cli?)
We need this because we are building a product that will have different styling per client

Example:
At the moment, the angular-cli.json takes styling like in the example below (adding the environment configuration to put more context to the desired functionality):

"styles": [
 	"styles.scss"
 ],
"environment": "environments/environment.ts",
"environmentSource": "environments/environment.ts",
"environments": {
	"development ": "environments/development/environment.ts",
	"client1": "environments/client1/environment.ts",
	"client2": "environments/client1/environment.ts"
}

I would ideally like to be able to set a different style list per environment, I’m suggesting something like this:

"styles": {
 	"development": [
 		"environments/development/styles/styles.scss"		
 	],
 	"client1": [
 		"environments/client1/styles/styles.scss"		
 	],
 	"client2": [
		"environments/client2/styles/styles.scss"
 	]
 }
"environment" : "environments/environment.ts",
"environmentSource": "environments/environment.ts",
"environments": {
	"development ": "environments/development/environment.ts",
	"client1": "environments/client1/environment.ts",
	"client2": "environments/client1/environment.ts"
}

Then I would run:
for development:
ng serve --environemnt:development --style:development
ng build --bh /development/ --environemnt:development --style:development

for client1:
ng serve --environemnt:client1 --style:client1
ng build --bh /client1/ --environemnt:client1 --style:client1

for client2:
ng serve --environemnt:client2 --style:client2
ng build --bh /client2/ --environemnt:client2 --style:client2

Metadata

Metadata

Assignees

No one assigned

    Labels

    P5The team acknowledges the request but does not plan to address it, it remains open for discussionfeatureLabel used to distinguish feature request from other issues

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions