Definitelytyped: /node_modules/@types/lodash/common/object.d.ts(): Tidak dapat menemukan nama 'Kecualikan'.

Dibuat pada 11 Mar 2019  ·  13Komentar  ·  Sumber: DefinitelyTyped/DefinitelyTyped

Halo,

Mulai beberapa hari yang lalu, kami mulai melihat hal berikut ketika mencoba membangun proyek Angular2+ yang sudah ada dengan menggunakan @types/lodash-es dan lodash-es.

.../node_modules/@types/lodash/common/object.d.ts (): Cannot find name 'Exclude'.

Ini menyebabkan build produksi tidak lagi berhasil diselesaikan.
Proyek ini menggunakan:
"@types/lodash-es": "^4.14.5",
"lodash-es": "^4.17.4",
"ketik": "~2.3.2"

Per https://github.com/lodash/lodash/issues/4225 dan https://stackoverflow.com/questions/55018665/following-lodash-error-on-build-cannot-find-name-exclude , sepertinya ada perubahan yang dilakukan yang bergantung pada TypeScript 2.8+

Bisakah Anda memberikan pembaruan yang tidak memerlukan versi TypeScript untuk diperbarui melewati 2.3+?

Komentar yang paling membantu

Anda dapat menginstal tipe untuk TypeScript versi lama dengan menggunakan tag npm. Misalnya jenis lodash untuk TypeScript 2.5 npm i -D @types/[email protected] .

Semua 13 komentar

Sepertinya saya bahwa masalahnya mungkin disebabkan oleh @types/lodash-es yang membutuhkan "@types/lodash": "*" dalam file package-lock.json. Ini menghasilkan entri berikut dalam file package-lock.json:

"@types/lodash": { "version": "4.14.123", "resolved": "https://registry.npmjs.org/@types/lodash/-/lodash-4.14.123.tgz", },

versi 4.14.123 berisi perubahan yang melanggar (menggunakan Kecualikan yang hanya tersedia di TypeScript 2.8+).

Bagaimana saya bisa menggunakan versi @types\lodash-es yang tidak menyebabkan versi terbaru @types/lodash dibawa ke/digunakan dalam proyek?

Lebih detail disediakan dalam pertanyaan saya di sini: https://stackoverflow.com/questions/55123747/lodash-es-error-on-build-cannot-find-name-exclude

Sepertinya saya bahkan versi sebelumnya dari @types/lodash-es menyebabkan versi terbaru dari @types/lodash dibawa ke dalam proyek, yang berarti proyek tidak akan dibangun karena @types/lodash 4.14.123 adalah tidak kompatibel dengan TypeScript 2.3.* (karena Exclude digunakan). Namun, saya tidak memiliki kendali atas versi @types/lodash mana yang diperlukan karena ini ditangani secara tidak langsung @types/lodash-es yang merupakan satu-satunya ketergantungan terkait yang saya miliki dalam proyek ...

package.json

{
"nama": "Tes",
"versi": "0.0.0",
"lisensi": "MIT",
"skrip": {
"ng": "ng",
"mulai": "ng servis",
"membangun": "ng membangun",
"tes": "tes ng",
"lint": "ng serat",
"e2e": "ng e2e",
"bundle-report": "webpack-bundle-analyzer dist/stats.json"
},
"pribadi": benar,
"ketergantungan": {
"@angular/animasi": "^4.2.5",
"@sudut/umum": "^4.2.5",
"@angular/compiler": "^4.2.5",
"@angular/compiler-cli": "^4.2.5",
"@sudut/inti": "^4.2.5",
"@angular/forms": "^4.2.5",
"@angular/http": "^4.2.5",
"@angular/platform-browser": "^4.2.5",
"@angular/platform-browser-dynamic": "^4.2.5",
"@angular/router": "^4.2.5",
"@asymmetrik/ngx-leaflet": "2.6.1",
"@asymmetrik/ngx-leaflet-draw": "2.7.1",
"@types/angular-ui-bootstrap": "^0.13.44",
"@types/fullcalendar": "^3.5.0",
"@types/googlemaps": "^3.26.14",
"@types/highcharts": "^5.0.36",
"@types/jquery": "^2.0.46",
"@types/jqueryui": "^1.11.35",
"@types/leaflet": "1.2.7",
"@types/leaflet-draw": "0.4.12",
"@jenis/momen": "^2.13.0",
"@types/node": "^6.0.79",
"@ultimate/ngxerrors": "^1.3.0",
"angular2-virtual-scroll": "^0.3.1",
"babel-regenerator-runtime": "^6.5.0",
"bootstrap": "^3.3.7",
"inti-js": "^2.4.1",
"dragula": "^3.7.2",
"font-mengagumkan": "^4.7.0",
"kalender penuh": "^3.6.2",
"fullcalendar-scheduler": "^1.9.3",
"highcharts": "6.2.0",
"jquery": "^3.2.1",
"jquery-ui-sortable": "^1.0.0",
"jqueryui": "^1.11.1",
"leaflet": "1.3.1",
"leaflet-draw": "1.0.2",
"lodash": "^4.17.4",
"momen": "^2.18.1",
"zona waktu-momen": "^0.5.14",
"ng-treetable": "^1.2.3",
"ng2-ckeditor": "1.1.9",
"ng2-dragula": "^1.5.0",
"ng2-pdf-viewer": "3.0.8",
"ngx-bootstrap": "^1.9.1",
"ngx-cookie-service": "^1.0.10",
"ngx-malihu-scrollbar": "^1.1.2",
"ngx-pipes": "~1.6.1",
"ngx-restangular": "^1.0.11",
"ngx-slick": "^0.1.3",
"utama": "4.2.2",
"rxjs": "^5.1.0",
"slick-carousel": "^1.8.1",
"socket.io-client": "^2.0.4",
"zone.js": "^0.8.4"
},
"devDependencies": {
"@angular/cli": "^1.7.4",
"@angular/compiler-cli": "^4.0.0",
"@types/jasmine": "2.5.38",
"@types/leaflet": "1.2.7",
"@types/leaflet-draw": "0.4.12",
"@types/node": "~6.0.60",
"codelyzer": "~2.0.0",
"inti melati": "~2.5.2",
"jasmine-spec-reporter": "~3.2.0",
"karma": "~1.4.1",
"karma-chrome-launcher": "~2.1.1",
"karma-cli": "~1.0.1",
"karma-liputan-istanbul-reporter": "^0.2.0",
"karma-jasmine": "~1.1.0",
"karma-jasmine-html-reporter": "^0.2.2",
"busur derajat": "~5.1.0",
"ts-node": "~2.0.0",
"tslint": "~4.5.0",
"ketik": "2.3.4",
"webpack-bundle-analyzer": "^2.9.0"
}
}


Langkah:

  1. rm -rf node_modules package-lock.json
  2. instal npm
  3. ng melayani

GALAT di /../node_modules/@types/lodash/common/object.d.ts (1689,12): Tidak dapat menemukan nama 'Kecualikan'.
GALAT di /../node_modules/@types/lodash/common/object.d.ts (1766,12): Tidak dapat menemukan nama 'Kecualikan'.
GALAT di /../node_modules/@types/lodash/common/object.d.ts (1842,34): Tidak dapat menemukan nama 'Kecualikan'.

Mendapat kesalahan di atas ini. Adakah cara untuk menyelesaikan ini??

Jika saya mengganti file ("/../node_modules/@types/lodash/common/object.d.ts") dengan kode " https://codeshare.io/adWzlB " maka berfungsi ...

mengalami masalah serupa, menginstal versi "4.14.121" dari @types/lodash dan berfungsi dengan baik yang tampaknya versi yang lebih stabil dan kompatibel dengan versi TypeScript yang telah saya instal

dependensi adalah seperti di bawah ini dalam file package.json saya:

"ketergantungan": {
.........................,
"@types/lodash": "4.14.121",
"ketik": "2.5.3",
}

Anda dapat menginstal tipe untuk TypeScript versi lama dengan menggunakan tag npm. Misalnya jenis lodash untuk TypeScript 2.5 npm i -D @types/[email protected] .

Baru saja memperbarui typescript@~2.8.x dan masalahnya hilang!

@elouizbadr Apakah Anda mengalami kelambatan dalam membangun setelah memutakhirkan ke typescript@~2.8.x . Waktu pembuatan saya terlalu lama, hampir dua kali lebih lambat setelah memutakhirkan ke 2.8.x.

Saya mengalami masalah yang sama kemudian saya telah mengikuti langkah-langkah @ faizu88 dan saya telah menyelesaikan masalah tersebut.

Saya memiliki masalah yang sama. Solusi saya dijalankan di bawah perintah

aplikasi cd
npm install @types/ [email protected] --save -exact

Semoga bisa membantu banyak orang. :)

Ini bekerja untuk saya: https://github.com/DefinitelyTyped/DefinitelyTyped/issues/33778#issuecomment -473358843 oleh @j-oliveras

Kasus ini saya hadapi ketika saya bekerja di tim yang menggunakan nodejs versi yang sama dan
npm. Dengan kode sumber yang sama saya tidak bisa membangun, dan teman saya tidak punya masalah.
Ketika saya memeriksa node_module dan membandingkan lodash. Saya menemukan bahwa versinya adalah
berbeda. Versi yang benar adalah 4.14.116.

Pada Senin, 20 Mei 2019 pukul 22:41 Toby Thain [email protected]
menulis:

Apakah ada penjelasan yang jelas dan perbaikan yang masuk akal untuk ini?


Anda menerima ini karena Anda berkomentar.
Balas email ini secara langsung, lihat di GitHub
https://github.com/DefinitelyTyped/DefinitelyTyped/issues/33778?email_source=notifications&email_token=AELTPL2WSZ6YGC5FNLAIF3TPWLBEJA5CNFSM4G5FWYT2YY3PNVWWK3TUL52HS4DFVREXG43VMXVBW4Vissue
atau matikan utasnya
https://github.com/notifications/unsubscribe-auth/AELTPL3O5YGZXAHUDSEBN3TPWLBEJANCNFSM4G5FWYTQ
.

npm i -D @types/ [email protected]

perintah ini bekerja untuk saya juga.

Baru saja memperbarui typescript@~2.8.x dan masalahnya hilang!

Saya mengatur TypeScript@~2.8.2 dan berhasil!! Terima kasih !!

Apakah halaman ini membantu?
0 / 5 - 0 peringkat