Saya menggunakan Intellij Ultimate untuk membuat kode aplikasi angular 4 saya.
Saya membuat proyek Angular 4 baru, berisi lingkungan.ts
dan lingkungan.prod.ts
dan lingkungan dikonfigurasi dengan benar di angular-cli.json
.
bagaimana cara mengimpornya dalam kode saya? Karena sebenarnya ketika saya membangunnya saya menyatakan lingkungan mana yang akan digunakan. Bagaimana cara kerjanya? Apakah saya perlu mengkompilasi sesuatu dengan Intellij?
Saya mencoba googling dan menemukan banyak contoh ketika orang benar-benar mengimpor file environment.ts tertentu. tapi itu'tidak baik, bukan? Karena itu akan menggunakan file environment.ts yang sama bahkan jika saya membangun untuk lingkungan yang berbeda.
Apa yang harus saya lakukan?
Berikut ini adalah artikel yang sangat bagus tentang file lingkungan dengan angular cli: http://tattoocoder.com/angular-cli-using-the-environment-option/
Singkatnya, Anda memang mengimpor environment.ts
tetapi file yang benar akan diimpor tergantung pada lingkungan apa itu. angular cli akan mengurusnya seperti yang dijelaskan dalam artikel.
Saya memiliki pertanyaan yang sama, dan menemukan artikel yang sama dengan yang diposting @Ahmed. Namun, itu tidak menyelesaikan masalah saya: Saya baru saja mendapatkannya:
ERROR in XXX/src/app/app.component.ts (19,29): Cannot find module './environment'.
Saya bekerja dengan build yang dibuat melalui ng new
, jadi jika Anda bekerja dengan klien angular terbaru, Anda mungkin akan mengalami masalah yang sama dengan yang saya alami. Seperti yang dinyatakan @Ahmed dalam komentarnya pada jawabannya, penting bagi Anda untuk mendapatkan jalur relatif yang benar. Versi (saat ini) dari ng cli menempatkan komponen aplikasi utama Anda di sini:
projectFolder/app/src/app.component.ts
Dan menempatkan berkas lingkungan di sini:
projectFolder/app/environments/environment.ts
Oleh karena itu, baris yang benar untuk menyertakan lingkungan dari dalam app.component Anda adalah ini:
import { environment } from '../environments/environment';
Fitur kecil: environment.ts
sebenarnya adalah berkas konfigurasi lingkungan untuk lingkungan pengembangan. Namun, pada saat run time (baik karena perintah ng build
atau perintah ng serve
), berkas ini akan digantikan oleh apa pun yang dinyatakan oleh lingkungan yang sebenarnya. Jadi, meskipun Anda secara eksplisit menyertakan berkas lingkungan pengembangan, pada saat run time Anda akan mendapatkan variabel lingkungan untuk lingkungan apa pun yang Anda miliki. Tampaknya aneh bagi saya, tetapi ini berhasil, dan sepertinya memang seperti itulah cara kerjanya.
Lingkungan tidak bekerja untuk saya dengan @angular/cli
1.2.4
, tetapi mereka memuat Ok dengan 1.3.2
, jadi pastikan Anda menggunakan versi terbaru dari seri ini.