Ketika saya mencoba membuat komponen di cli sudut, itu menunjukkan kepada saya kesalahan ini. Bagaimana saya menyingkirkannya?
Kesalahan: Lebih dari satu modul cocok. Gunakan opsi lewati-impor untuk melewati impor komponen ke modul terdekat.
Saya menggunakan versi cli sudut: 1.4.1
ng g c admin/manageUsers ---module ../app
Coba ini: Ini bekerja untuk saya
ng generate component componentName --module=app.module
sumber
Ini disebabkan karena generasi mencoba menambahkan komponen Anda ke modul, yaitu menambahkan baris ini
tetapi ditemukan 2 modul.
Seperti yang dinyatakan di sini , mereka memperbaikinya pada situasi di mana selama di root src / app folder Anda hanya memiliki 1 modul, Anda baik-baik saja, jadi hanya memindahkan modul sekunder ke sub-folder.
Kalau tidak, Anda harus menggunakan
--module
sumber
modules
subfolder, dan semuanya baik-baik saja sekarang.Ini bekerja untuk saya
sumber
Hanya pembaruan kecil untuk jawaban Zisha.
Dalam proyek saya semua modul ditempatkan di folder yang disebut "modul" dan semua komponen ditempatkan di folder "komponen" di bawah "src / app"
jadi untuk membuat komponen di bawah jalur tertentu, saya menggunakan sintaks berikut:
contoh:
sumber
CLI Angular: 6.0.8
Node: 10.4.0
OS: linux x64
Angular: 6.0.4
Dalam hal ada modul fitur (misalnya manager.module.ts dalam misalnya "/ manager" sub-folder) dengan modul routing yang externalized ke NgModule terpisah (misalnya manajer-routing.module.ts ) pesan kesalahan:
Lebih dari satu modul cocok. Gunakan opsi lewati-impor untuk melewati impor komponen ke modul terdekat.
tidak muncul dan komponen dihasilkan dan ditambahkan dengan benar ke modul manager.module.ts .
TETAPI HATI - HATI penamaan! nama modul routing harus diakhiri dengan " -routing "!
Jika modul perutean diberi nama seperti mis. Manager-router.module.ts , CLI akan mengeluh dengan pesan kesalahan dan mengharapkan Anda untuk memberikan opsi --module untuk secara otomatis menambahkan impor komponen:
atau
jika Anda lebih suka menambahkan impor komponen secara manual
sumber
-
berhasil! Sayalib-name.routing.module.ts
bukannyalib-name-routing.module.ts
.Ada dua cara untuk mengatasi masalah ini.
1) Lewati (menggunakan --skip-import in command) impor default dan buat komponen dan begitu komponen dibuat impor secara manual di mana pun Anda ingin menggunakannya.
2) Berikan nama modul secara eksplisit di tempat Anda ingin diimpor
sumber
sumber
Saya mendapatkan kesalahan di bawah ini ketika mencoba membuat komponen baru di bawah folder.
kesalahan: Lebih dari satu modul cocok. Gunakan opsi lewati-impor untuk melewati impor komponen ke modul terdekat.
Saya telah menggunakan perintah di bawah ini dan komponen baru berhasil dibuat di bawah folder.
sumber
Proyek saya dibuat menggunakan Visual Studio Community 2017 dan menciptakan 3 modul terpisah: app.browser.module, app.server.module dan app.share.module
Untuk membuat komponen, saya memeriksa jawaban di atas dan menemukan modul saya menjadi app.share.module.
Jadi, saya jalankan:
sumber
Ketika ada lebih dari satu modul di bawah folder aplikasi, menghasilkan komponen dengan perintah di bawah ini akan gagal:
Alasannya adalah sudut CLI mendeteksi beberapa modul, dan tidak tahu di mana modul untuk menambahkan komponen. Jadi, Anda perlu menyebutkan secara eksplisit komponen modul mana yang akan ditambahkan:
sumber
jika Anda membuat dalam modul tertentu pergi ke jalan itu dan jalankan ng gc componentname
lain buat modul pertama modul modul
cd arc / app / modulename pergi ke lintasan modulename dan buat komponen
sumber
coba ng g tajuk komponen --module app berfungsi untuk saya
sumber
app.routing.module.ts
karenanya kesalahanketika Anda memiliki lebih dari satu modul, Anda perlu menentukan nama modul
sumber
ketika Anda memiliki banyak
module.ts
file di dalam modul, Anda perlu menentukan file modul mana yang Anda hasilkan komponen.untuk contoh saya telah berbagi folder modul di dalamnya saya punya
shared.module.ts
danmaterial.module.ts
seperti inidan saya ingin menghasilkan
sidebar
komponen untukshared.module.ts
kemudian saya akan menjalankan perintah berikutjika Anda ingin mengekspor komponen kemudian jalankan perintah berikut
sumber
CLI Angular: 8.3.4 Node: 10.16.3 Angualr: 4.2.5
Saya menggunakan perintah "dotnet new angular" untuk menghasilkan proyek, dan telah menghasilkan 3 modul yang berbeda di folder aplikasi (Meskipun tes sederhana dengan nama proyek baru hanya menghasilkan satu modul.
lihat modul dalam proyek Anda dan putuskan modul yang Anda inginkan - kemudian tentukan namanya
Anda dapat membaca lebih lanjut tentang modul di sini: https://angular.io/guide/architecture-modules
sumber
Dalam kasus saya, sepertinya ng tidak terdaftar ke jalur lingkungan saya. Saya telah menggunakan perintah jalankan npm untuk menjalankan perintah ng. Berhati-hatilah untuk meloloskan argumen, Anda memerlukan ekstra - sesuai spesifikasi npm run.
Contoh: npm run ng gc komponen / penjadwalan - --module = app
Atau: npm menjalankan komponen gc / penjadwalan - --skip-import
sumber
Saya mendapat peringatan ini saat
angular.json
mengonfigurasi ini:Ketika diubah ke
"app"
semua bekerja dengan baik.sumber
Hanya untuk menambahkan informasi lain untuk ini bagi orang seperti saya yang kebetulan hanya memiliki satu aplikasi.
Saya mengatur aplikasi saya dengan app.module.ts utama dan saya melakukan routing dengan modul routing di foldernya sendiri di bawah aplikasi utama. Saya melewati dan melakukan beberapa 'pembersihan' karena saya memiliki beberapa hal lain yang perlu diorganisir lebih baik. Satu hal yang saya lakukan adalah memindahkan routing.module.ts ke folder root; karena itu adalah satu-satunya file dalam folder yang saya pikir tidak perlu folder itu sendiri.
Ini bekerja dengan baik pada awalnya tetapi kali berikutnya saya mencoba untuk menghasilkan komponen baru (beberapa waktu kemudian, melalui IDE WebStorm) gagal dengan pesan ini. Setelah membaca ini saya mencoba meletakkan modul routing kembali ke folder terpisah dan berfungsi lagi.
Jadi perhatikan peringatan untuk orang lain, jangan pindahkan modul perutean ke folder root Anda! Saya yakin ada cara lain untuk menangani ini juga, tetapi saya senang dengan itu di folder sendiri untuk saat ini dan menggunakan generator IDE seperti sebelumnya.
sumber
Anda harus memberikan nama modul yang ditentukan seperti
Di mana
module-name
Anda ingin memperbarui dengan komponen yang baru dibuat.sumber
Sebagai peretasan, langkah-langkah di bawah ini, berhasil untuk saya.
1) Pindahkan * .module.ts file dari src / app ke lokasi di luar proyek.
2) Jalankan perintah untuk membuat komponen
[ng g c component-name]
3) Pindahkan kembali file * .module.ts ke src / app /
sumber