How to dynamically add scripts tag at each Sub-domain level through single angular application?
How to dynamically add scripts tag at each Sub-domain level through single angular application?
I have tired some of DOM operation like,
document.createElement
document.write
The document.createElement
way requires a standard script structure . But in my case it can be either a java script function or script link.
document.createElement
The document.write
operation overwrite the entire script when used inside app.component
and only inside the app.component
I have the dynamic data at Sub-domain level.
document.write
app.component
app.component
Didn’t work as expected .
If there is feedback you can provide, please expand on it.
– Anonymous coward
Sep 14 '18 at 16:52
1 Answer
1
You're talking about the same application on different sub-domains so it seems like you're looking at deploying an application to different environments with different scripts depending on which environment.
I recommend using the environment files in srcenvironments
. You can set the scripts like this:
srcenvironments
environment.ts:
export const environment =
version: require('../../custom-script-for-environment1.json')
;
environment.subdomain.ts:
export const environment =
version: require('../../custom-script-for-environment2.json')
;
and then import it where needed:
import environment from '../environments/environment';
Read more about environments in this Angular blog:
https://alligator.io/angular/environment-variables/
Thanks for contributing an answer to Stack Overflow!
But avoid …
To learn more, see our tips on writing great answers.
Required, but never shown
Required, but never shown
By clicking "Post Your Answer", you acknowledge that you have read our updated terms of service, privacy policy and cookie policy, and that your continued use of the website is subject to these policies.
Why are you trying to dynamically load a script and skip the angular pipeline? Regardless of how to do this, you should ask yourself why you need to do this. There is most likely a much more elegant solution to this.
– Syntactic Fructose
Sep 14 '18 at 16:26