Moment: TS2307: Tidak dapat menemukan 'momen' modul.

Dibuat pada 1 Mei 2020  ·  47Komentar  ·  Sumber: moment/moment

Saya mengalami masalah saat mengimpor momen ke proyek angular 8 saya.

Versi sudut = 8.3.26
Ketik versi skrip = 3.6.2
saat versi = 2.25.0

Saya mendapatkan kesalahan TS2307: Tidak dapat menemukan 'momen' modul. dan saya telah menggunakan
impor momen dari 'momen'; .

saya telah menambahkan "moduleResolution": "node" dan "allowSyntheticDefaultImports": true, di tsConfig

dapatkah seseorang membantu dalam hal ini

Komentar yang paling membantu

coba versi 2.24, pengujian saya mulai gagal pada versi baru tetapi tidak masalah dengan versi sebelumnya

Semua 47 komentar

coba versi 2.24, pengujian saya mulai gagal pada versi baru tetapi tidak masalah dengan versi sebelumnya

coba versi 2.24, pengujian saya mulai gagal pada versi baru tetapi tidak masalah dengan versi sebelumnya

Saya telah mencoba. tapi kesalahan yang sama datang.

seperti apa garis momen di package.json?

bekerja dengan 2.24.0 mungkin kesalahan penyebaran di 2.25.0
Harap terapkan versi baru dengan perbaikan.

jika Anda menggunakan benang, tambahkan blok resolusi ke package.json untuk mengganti versi sub-ketergantungan, itu berfungsi untuk saya

  "resolutions": {
    "moment": "2.24.0"
  }

Tampaknya resolusi modul Typecript tidak dapat menemukan momen. Menggunakan jalur relatif berfungsi ./node_modules/moment/moment. @codebrent Terima kasih, sekarang ini bekerja dengan versi 2.24.0.

Di 2.25 ini telah ditambahkan ke package.json. Tetapi jika saya mengerti tidak ada lokasi yang sesuai untuk file typedef. Mungkin ini merusak pengetikan?

"typesVersions": {
    ">=3.1": {
      "*": [
        "ts3.1-typings/*"
      ]
    }
  },

bekerja dengan 2.24.0 mungkin kesalahan penyebaran di 2.25.0
Harap terapkan versi baru dengan perbaikan.

Tidak, itu tidak berhasil untuk saya

seperti apa garis momen di package.json?

"momen": "^ 2.25.0",

Capture
Semua saat impor mengembalikan kesalahan

seperti apa garis momen di package.json?

111

coba ubah ke "momen": "2.24.0", pastikan tidak ada ^ di dalamnya. hapus node_models dan instal ulang npm. juga jika Anda memiliki package-lock.json Anda mungkin perlu menghapusnya. Jika tidak, npm akan terus menginstal 2.25

Saya melihat masalah yang sama, dan menurut skor Kompatibilitas Dependabot untuk saat ini , saya bukan satu-satunya.

Menurunkan versi ke 2.24.0 mungkin merupakan solusi, tetapi secara efektif mencegah setidaknya beberapa pengguna menggunakan 2.25.0.

coba ubah ke "momen": "2.24.0", pastikan tidak ada ^ di dalamnya. hapus node_models dan instal ulang npm. juga jika Anda memiliki package-lock.json Anda mungkin perlu menghapusnya. Jika tidak, npm akan terus menginstal 2.25

Cara kanonis yang lebih aman untuk melakukannya adalah npm install [email protected] . Anda tidak perlu menghapus apapun atau mengubah apapun secara manual.

Saya dapat mengonfirmasi bahwa menurunkan versi ke 2.24 telah menyelesaikan masalah.

coba ubah ke "momen": "2.24.0", pastikan tidak ada ^ di dalamnya. hapus node_models dan instal ulang npm. juga jika Anda memiliki package-lock.json Anda mungkin perlu menghapusnya. Jika tidak, npm akan terus menginstal 2.25

Cara kanonis yang lebih aman untuk melakukannya adalah npm install [email protected] . Anda tidak perlu menghapus apapun atau mengubah apapun secara manual.

Saya dapat mengonfirmasi bahwa menurunkan versi ke 2.24 telah menyelesaikan masalah.

Secara lokal dijalankan setelah down grade ke 2.24.0. tetapi ketika saya menerapkan ini ke Azure untuk memberikan kesalahan yang sama.
azure error

Pertanyaan saya adalah apakah itu package.json yang sama menjalankan lokal dan biru mengapa menyebabkan kesalahan pada saat impor.
saya telah melampirkan error log in server juga

Saya dapat mengonfirmasi bahwa 2.25.0 memberikan masalah ini tetapi tidak di 2.24.0.

Saya juga mengonfirmasi bahwa 2.25.0 memberikan masalah ini. Momen 2.24.0 berfungsi dengan baik.

Saya mengalami masalah ini selama pembuatan gambar buruh pelabuhan.

itu tidak bekerja dengan 2.24.0 untuk saya

Menurunkan versi juga memperbaiki masalah di sini. Mungkin versi TypeScript mungkin berperan dalam memiliki bug atau tidak?

Saya menggunakan zona waktu momen
Ini tidak berfungsi dengan memperbaiki versi saat ke 2.24.0 di package.json

@zhuyuedlut @leafqi

itu tidak bekerja dengan 2.24.0

Anda mungkin tidak menurunkan versi ke 2.24.0. Hapus file kunci paket dan folder node_modules Anda, lalu jalankan perintah ini:

npm install --save --save-exact [email protected]
npm install

Saya juga mengalami masalah yang sama dalam proyek skrip dan build tiba-tiba gagal karena kami tidak menyematkan ketergantungan di package.json.

error TS2307: Cannot find module 'moment'.
error Command failed with exit code 2.

menyematkan versi ke "2.24.0" memperbaiki masalah.

Dapat mencoba dengan bidang resolusi di package.json

Menambahkan

"resolusi": {
"momen": "2.24.0"
}

Saya juga mengonfirmasi bahwa dengan 2.25.0 saya memiliki masalah yang sama dengan skrip ketikan 3.8.3 dan berjalan dengan ts-node 8.9.1. Menurunkan versi ke 2.24.0 menyelesaikan masalah.

@zhuyuedlut @leafqi

itu tidak bekerja dengan 2.24.0

Anda mungkin tidak menurunkan versi ke 2.24.0. Hapus file kunci paket dan folder node_modules Anda, lalu jalankan perintah ini:

npm install --save --save-exact [email protected]
npm install

Terima kasih. masalah saya telah terpecahkan. ini bekerja dengan 2.24.0
penggunaan yang benar: "moment": "2.24.0"
penggunaan yang salah: "moment": "^2.24.0"

"moment": "2.24.0" juga berfungsi untuk saya ..

Sama, mengunci di 2.24.0 memperbaikinya.

Ini ada di aplikasi 7.2 sudut yang dibangun dengan webpack ^ 4.2.0

Ya, 2.24.0 berfungsi dengan baik. Adakah yang tahu perubahan apa yang mereka buat?

Sama, masalah diperbaiki dengan menyetel versi tetap ke "2.24" bukan "^ 2.24"

Apakah kami memiliki ETA untuk perbaikan ini?

Ini hari Jumat dan saya bertanya-tanya apakah saya harus menurunkan versi ke 2.24.0 sebelum akhir pekan.

coba ubah ke "momen": "2.24.0", pastikan tidak ada ^ di dalamnya. hapus node_models dan instal ulang npm. juga jika Anda memiliki package-lock.json Anda mungkin perlu menghapusnya. Jika tidak, npm akan terus menginstal 2.25

Terima kasih. Masalah diperbaiki dengan menurunkan versi ke 2.24.0

Anda tidak lagi hidup pada saat ini :)

coba ubah ke "momen": "2.24.0", pastikan tidak ada ^ di dalamnya. hapus node_models dan instal ulang npm. juga jika Anda memiliki package-lock.json Anda mungkin perlu menghapusnya. Jika tidak, npm akan terus menginstal 2.25

Terima kasih, Masalah diperbaiki dengan menurunkan versi dari 2.25.0 ke 2.24.0. Saya juga melakukan "^ 2.24.0" hingga "2.24.0"

Jika downgrade von 2.25.0 menjadi 2.24.0 tidak berfungsi dan Anda mendapatkan kesalahan yang sama lagi, coba uninstal modul sepenuhnya dan instal ulang lagi.

Menggunakan npm:

  1. npm uninstall moment
  2. npm install [email protected]

Semoga membantu.

Bersulang
Unkn0wn0x

Adakah Ide kapan perbaikan akan dirilis? Saya melihat ini adalah masalah yang rusak dan saya tidak memiliki akses untuk membuat perubahan di Master untuk menyetel versi saat ini ke 2.24 sekarang dan pembuatan produksi gagal kiri dan kanan.
Silakan bagikan rilis ETA terima kasih

Saya juga mengalami masalah ini, dan saya memperbaikinya
dengan menghapus garis tersebut
"typesVersions": { ">=3.1": { "*": [ "ts3.1-typings/*" ] } },
baris 150-156
di
. \ node_modules \ moment \ package.json
dan setelah saya melakukan ini, ini berfungsi sepenuhnya dengan baik dengan versi 2.25

Saya juga mengalami masalah ini, dan saya memperbaikinya
dengan menghapus garis tersebut
"typesVersions": { ">=3.1": { "*": [ "ts3.1-typings/*" ] } },
baris 150-156
di
. \ node_modules \ moment \ package.json
dan setelah saya melakukan ini, ini berfungsi sepenuhnya dengan baik dengan versi 2.25

ini akan bekerja secara lokal, tetapi untuk pipeline CI, saya ragu

Terima kasih semuanya: D 2.24.0 juga bekerja untuk saya ..

Diturunkan menjadi 2.24.0 , dan ini berfungsi dengan baik.

2.25.1 dirilis

Diuji 2.25.1, masalah hilang. Terima kasih

Ya, saya menguji ini juga dan tidak mengalami masalah apa pun.

Memang, meningkatkan beberapa menit setelah diterbitkan dan semuanya baik-baik saja: terima kasih atas perbaikan yang cepat!

Akhirnya itu berhasil untuk saya. menurunkan versi ke 2.24.0 berfungsi. tapi pastikan untuk meletakkan " momen": "2.24.0"
alih-alih "momen": "^ 2.24.0"
azure error

versi 2.25.1 memecahkan masalah 'momen' modul Tidak dapat ditemukan, tetapi saya menguji dalam aplikasi Angular 8 dan memunculkan kesalahan berikut:

WARNING in ./node_modules/moment/src/lib/locale/locales.js
Module not found: Error: Can't resolve './locale' in '/home/project/node_modules/moment/src/lib/ locale'

apakah ada orang lain yang mengalami kegagalan ini?

Saya juga mendapatkan peringatan di 2.25.1 tentang beberapa fungsi lain yang saya referensikan:

"export 'utc' (imported as 'moment') was not found in 'moment'
"export 'max' (imported as 'moment') was not found in 'moment'
"export 'min' (imported as 'moment') was not found in 'moment'

Bagi saya itu

    "moment": "2.24.0",
    "moment-timezone": "^0.5.31",

Saya pikir Anda dapat memperbarui momen ke versi 2.29.0

npm uninstall moment
npm install [email protected]

TS2307: Tidak dapat menemukan 'momen' modul di Angular 8

Apakah halaman ini membantu?
5 / 5 - 1 peringkat