Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to set a constant in aurelia by environment

Tags:

aurelia

I'd like my API's base URL to change from dev to prod. In Angular I user to use a config.json file which was later injected into the app using grunt-env

like image 741
amitaibu Avatar asked Apr 18 '15 21:04

amitaibu


2 Answers

If you use the Aurelia CLI, it will generate an environments directory inside of your aurelia_project.

Within this directory you can setup environmental configs that will be copied into environment.js in your src directory based the --env [dev/stage/prod] flag that you pass into your au build/run commands.

Then you can use import environment from './environment' to access your environment specific configuration values.

Another option that you can look into is the Aurelia Configuration Plugin, which also has dynamic environmental configs.

like image 91
Jeff Mitchell Avatar answered Nov 15 '22 21:11

Jeff Mitchell


If you want to 'inject' it only once then what is stopping you from using a simple ES6 module ? It should be loaded only once from the server.

For instance you could something like that in a config.js file : (warning ! I didn't try to run it)

export var Config = {
    path : 'path to find'
};

you can then use your module anywhere you need it :

import {Config} from 'config';
like image 33
sam Avatar answered Nov 15 '22 20:11

sam