2017-01-19 26 views
5

Czy mogę załadować skrypty warunkowo za pomocą Angular CLI ???Skrypt obciążenia Angular2 warunkowo korzystający z Angularnego interfejsu CLI?

W tym pliku chcę załadować jeden skrypt w zależności od środowiska lub zmiennej. Więc w produkcji chcę załadować skrypt, a nie rozwijać. Czy jest jakiś sposób na zrobienie tego? W jaki sposób?

kątowe-cli.json

... 
"styles": [ 
    "../node_modules/bootstrap/dist/css/bootstrap.css", 
    "../node_modules/font-awesome/css/font-awesome.min.css", 
    ], 
    "scripts": [ 
    "../node_modules/jquery/dist/jquery.js", 
    "../node_modules/ion-rangeslider/js/ion.rangeSlider.js", 
    "../node_modules/web-animations-js/web-animations.min.js", 
    <---- LOAD HERE ONE SCRIPT DEPENDING ON ENVIRONMENT OR VARIABLE 
    ], 
    "environments": { 
    "source": "environments/environment.ts", 
    "dev": "environments/environment.ts", 
    "prod": "environments/environment.prod.ts" 
    } 
... 

Odpowiedz

4

Podczas @yuzuri zaproponował bardzo eleegnat rozwiązanie - to wymaga, aby edytować moduł węzła, który nie jest dobrym pomysłem ..

Oto prosty Obejście:

Możesz edytować swój punkt „skrypty” pod pliku package.json mieć, że:

"start": "cp angular-cli-dev.json angular-cli.json && ng serve" 

"build": "cp angular-cli-prod.json angular-cli.json && ng build" 

Następnie należy zmienić nazwę pliku angular-cli.json na angular-cli-dev.json i kątowy-cli-prod.json. Każdy powinien mieć inną konfigurację - w moim przypadku różne skrypty w sekcji "skrypty".

nadzieję, że pomoże natomiast czekamy na oficjalne rozwiązanie

+0

Nie chcę edytować moduł węzła tak, aż do oficjalnego rozwiązania, to jest proste i praktyka. Dziękuję wam obu! – Ismaestro

+0

@Leo, Czy są potrzebne dodatkowe zmiany oprócz wspomnianego powyżej. Wypróbowałem powyższe zalecenie, ale wydaje się, że nie działa ono dla mnie. – Jay

+0

Dla każdego, kto jest nowy w świecie NPM, możesz uruchomić powyższe skrypty za pomocą następujących poleceń a) npm run-script serve b) npm run-script build – Jay