2017-01-28 10 views
0

Я использую угловой CLI для создания моего приложения. Мне нужно загрузить скрипт в мое приложение на уровне index.html (root) с разными ключами в другой среде.Угловой скрипт загрузки CLI на основе среды

...  
<script src="http://myAPI?key=dev"></script> <!-- dev build --> 

<script src="http://myAPI?key=prod"></script> <!-- prod build --> 

<my-root>Loading...</my-root> 
... 

Как я могу получить доступ к переменной среды CLI со страницы индекса? Было бы примерно так: key = <% = env%>?

ответ

0

Вам не нужно загружать дополнительный скриптовый тег в index.html. Если вам нужно загрузить внешний скрипт или библиотеку css, поместите их в файл angular-cli.json. Как это

"styles": [ 
    "../node_modules/bootstrap/dist/css/bootstrap.min.css", 
    "assets/css/font-awesome.min.css", 
    "styles.scss" 
], 
"scripts": [ 
    "../node_modules/jquery/dist/jquery.min.js", 
    "../node_modules/bootstrap/dist/js/bootstrap.min.js" 
], 

и перезапустить ng serve

+0

Спасибо за ответ, но как я могу настроить среду? Например: я хотел бы загрузить jquery10.js в dev, но загружать только jquery11.js в среду продукта. –

+0

просто укажите, какую версию вы хотите. Прежде чем создавать приложение через команду ng build -prod, измените его в файле angular-cli.json. –

0

Я в конечном итоге изменения index.ts добавив строку типа:

document.write('<link rel="stylesheet" href="' + environment.mediaBaseUrl + '/css/bs3-custom-theme.min.css"/>'); 

Проблема в том, что любой файл будет загружен после приложения. В случае CSS это приведет к FOUCs.