Definitelytyped: /node_modules/@types/lodash/common/object.d.ts (): '์ œ์™ธ' ์ด๋ฆ„์„ ์ฐพ์„ ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.

์— ๋งŒ๋“  2019๋…„ 03์›” 11์ผ  ยท  13์ฝ”๋ฉ˜ํŠธ  ยท  ์ถœ์ฒ˜: DefinitelyTyped/DefinitelyTyped

์•ˆ๋…•ํ•˜์‹ญ๋‹ˆ๊นŒ,

๋ฉฐ์น  ์ „๋ถ€ํ„ฐ @types/lodash-es ๋ฐ lodash-es๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๊ธฐ์กด Angular2+ ํ”„๋กœ์ ํŠธ๋ฅผ ๋นŒ๋“œํ•˜๋ ค๊ณ  ํ•  ๋•Œ ๋‹ค์Œ์ด ํ‘œ์‹œ๋˜๊ธฐ ์‹œ์ž‘ํ–ˆ์Šต๋‹ˆ๋‹ค.

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

์ด๋กœ ์ธํ•ด ํ”„๋กœ๋•์…˜ ๋นŒ๋“œ๊ฐ€ ๋” ์ด์ƒ ์„ฑ๊ณต์ ์œผ๋กœ ์™„๋ฃŒ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.
ํ”„๋กœ์ ํŠธ๋Š” ๋‹ค์Œ์„ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.
"@types/lodash-es": "^4.14.5",
"lodash-es": "^4.17.4",
"typescript": "~2.3.2"

https://github.com/lodash/lodash/issues/4225 ๋ฐ https://stackoverflow.com/questions/55018665/following-lodash-error-on-build-cannot-find-name-exclude ์— ๋”ฐ๋ฅด๋ฉด Typescript 2.8+์— ์˜์กดํ•˜๋Š” ๋ณ€๊ฒฝ ์‚ฌํ•ญ์ด ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค.

typescript ๋ฒ„์ „์„ 2.3 ์ด์ƒ์œผ๋กœ ์—…๋ฐ์ดํŠธํ•  ํ•„์š”๊ฐ€ ์—†๋Š” ์—…๋ฐ์ดํŠธ๋ฅผ ์ œ๊ณตํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๊นŒ?

๊ฐ€์žฅ ์œ ์šฉํ•œ ๋Œ“๊ธ€

npm ํƒœ๊ทธ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ด์ „ ๋ฒ„์ „์˜ typescript์— ๋Œ€ํ•œ ์œ ํ˜•์„ ์„ค์น˜ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด typescript 2.5 npm i -D @types/[email protected] ๋Œ€ํ•œ lodash ์œ ํ˜•์ž…๋‹ˆ๋‹ค.

๋ชจ๋“  13 ๋Œ“๊ธ€

๋‚ด๊ฐ€ ๋ณด๊ธฐ์—๋Š” package-lock.json ํŒŒ์ผ์—์„œ "@types/lodash": "*"๊ฐ€ ํ•„์š”ํ•œ @types/lodash-es๋กœ ์ธํ•ด ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ•œ ๊ฒƒ์œผ๋กœ ๋ณด์ž…๋‹ˆ๋‹ค. ๊ทธ ๊ฒฐ๊ณผ package-lock.json ํŒŒ์ผ์— ๋‹ค์Œ ํ•ญ๋ชฉ์ด ์ƒ์„ฑ๋ฉ๋‹ˆ๋‹ค.

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

๋ฒ„์ „ 4.14.123์—๋Š” ์ฃผ์š” ๋ณ€๊ฒฝ ์‚ฌํ•ญ์ด ํฌํ•จ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค(Typescript 2.8 ์ด์ƒ์—์„œ๋งŒ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ์ œ์™ธ ์‚ฌ์šฉ).

ํ”„๋กœ์ ํŠธ์—์„œ ์ตœ์‹  ๋ฒ„์ „์˜ @types/lodash๋ฅผ ๊ฐ€์ ธ์˜ค๊ฑฐ๋‚˜ ์‚ฌ์šฉํ•˜์ง€ ์•Š๋Š” @types\lodash-es ๋ฒ„์ „์„ ์–ด๋–ป๊ฒŒ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๊นŒ?

๋‚ด ์งˆ๋ฌธ์— ์ž์„ธํ•œ ๋‚ด์šฉ์ด ๋‚˜์™€ ์žˆ์Šต๋‹ˆ๋‹ค. https://stackoverflow.com/questions/55123747/lodash-es-error-on-build-cannot-find-name-exclude

๋‚ด๊ฐ€ ๋ณด๊ธฐ์—๋Š” ์ด์ „ ๋ฒ„์ „์˜ @types/lodash-es๊ฐ€ @types/lodash์˜ ๊ฐ€์žฅ ์ตœ๊ทผ ๋ฒ„์ „์„ ํ”„๋กœ์ ํŠธ์— ๊ฐ€์ ธ์˜ค๋Š” ์›์ธ์ด ๋˜๋Š” ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค. ์ฆ‰, @types/lodash 4.14.123์ด Typescript 2.3.*๊ณผ ํ˜ธํ™˜๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค(Exclude๊ฐ€ ์‚ฌ์šฉ๋˜๊ธฐ ๋•Œ๋ฌธ์—). ๊ทธ๋Ÿฌ๋‚˜ ๋‚ด๊ฐ€ ํ”„๋กœ์ ํŠธ์—์„œ ๊ฐ€์ง€๊ณ  ์žˆ๋Š” ์œ ์ผํ•œ ๊ด€๋ จ ์ข…์†์„ฑ์ธ @types/lodash-es๊ฐ€ ๊ฐ„์ ‘์ ์œผ๋กœ ์ฒ˜๋ฆฌ๋˜๊ธฐ ๋•Œ๋ฌธ์— @types/lodash์˜ ์–ด๋–ค ๋ฒ„์ „์ด ํ•„์š”ํ•œ์ง€ ์ œ์–ดํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค...

ํŒจํ‚ค์ง€.json

{
"์ด๋ฆ„": "ํ…Œ์ŠคํŠธ",
"๋ฒ„์ „": "0.0.0",
"๋ผ์ด์„ผ์Šค": "MIT",
"์Šคํฌ๋ฆฝํŠธ": {
"ng": "ng",
"์‹œ์ž‘": "ng ์„œ๋ธŒ",
"๋นŒ๋“œ": "ng ๋นŒ๋“œ",
"ํ…Œ์ŠคํŠธ": "ng ํ…Œ์ŠคํŠธ",
"๋ฆฐํŠธ": "ng ๋ฆฐํŠธ",
"e2e": "ng e2e",
"bundle-report": "webpack-bundle-analyzer dist/stats.json"
},
"๋น„๊ณต๊ฐœ": ์‚ฌ์‹ค,
"์ข…์†์„ฑ": {
"@angular/animations": "^4.2.5",
"@๊ฐ๋„/๊ณตํ†ต": "^4.2.5",
"@๊ฐ๋„/์ปดํŒŒ์ผ๋Ÿฌ": "^4.2.5",
"@angular/compiler-cli": "^4.2.5",
"@๊ฐ๋„/์ฝ”์–ด": "^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",
"@๊ฐ๋„/๋ผ์šฐํ„ฐ": "^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/๋ฆฌํ”Œ๋ฆฟ": "1.2.7",
"@types/leaflet-draw": "0.4.12",
"@์œ ํ˜•/์ˆœ๊ฐ„": "^2.13.0",
"@์œ ํ˜•/๋…ธ๋“œ": "^6.0.79",
"@ultimate/ngxerrors": "^1.3.0",
"angular2-๊ฐ€์ƒ ์Šคํฌ๋กค": "^0.3.1",
"babel-regenerator-runtime": "^6.5.0",
"๋ถ€ํŠธ์ŠคํŠธ๋žฉ": "^3.3.7",
"core-js": "^2.4.1",
"๋“œ๋ผ๊ตด๋ผ": "^3.7.2",
"๋ฉ‹์ง„ ๊ธ€๊ผด": "^4.7.0",
"์ „์ฒด ๋‹ฌ๋ ฅ": "^3.6.2",
"fullcalendar-์Šค์ผ€์ค„๋Ÿฌ": "^1.9.3",
"ํ•˜์ด์ฐจํŠธ": "6.2.0",
"jquery": "^3.2.1",
"jquery-ui-sortable": "^1.0.0",
"jqueryui": "^1.11.1",
"๋ฆฌํ”Œ๋ฆฟ": "1.3.1",
"๋ฆฌํ”Œ๋ฆฟ ๊ทธ๋ฆฌ๊ธฐ": "1.0.2",
"๋กœ๋‹ค์‰ฌ": "^4.17.4",
"์ˆœ๊ฐ„": "^2.18.1",
"์ˆœ๊ฐ„-์‹œ๊ฐ„๋Œ€": "^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-๋ถ€ํŠธ์ŠคํŠธ๋žฉ": "^1.9.1",
"ngx ์ฟ ํ‚ค ์„œ๋น„์Šค": "^1.0.10",
"ngx-malihu-์Šคํฌ๋กค๋ฐ”": "^1.1.2",
"ngx-ํŒŒ์ดํ”„": "~1.6.1",
"ngx-restangular": "^1.0.11",
"ngx-slick": "^0.1.3",
"ํ”„๋ผ์ž„": "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/๋ฆฌํ”Œ๋ฆฟ": "1.2.7",
"@types/leaflet-draw": "0.4.12",
"@์œ ํ˜•/๋…ธ๋“œ": "~6.0.60",
"codelyzer": "~2.0.0",
"์žฌ์Šค๋ฏผ ์ฝ”์–ด": "~2.5.2",
"jasmine-spec-reporter": "~3.2.0",
"์นด๋ฅด๋งˆ": "~1.4.1",
"์นด๋ฅด๋งˆ ํฌ๋กฌ ์‹คํ–‰๊ธฐ": "~2.1.1",
"์นด๋ฅด๋งˆ-cli": "~1.0.1",
"karma-coverage-istanbul-reporter": "^0.2.0",
"์นด๋ฅด๋งˆ ์žฌ์Šค๋ฏผ": "~1.1.0",
"karma-jasmine-html-reporter": "^0.2.2",
"๊ฐ๋„๊ธฐ": "~5.1.0",
"ts-๋…ธ๋“œ": "~2.0.0",
"tslint": "~4.5.0",
"ํƒ€์ž…์Šคํฌ๋ฆฝํŠธ": "2.3.4",
"์›นํŒฉ ๋ฒˆ๋“ค ๋ถ„์„๊ธฐ": "^2.9.0"
}
}


๋‹จ๊ณ„:

  1. rm -rf node_modules ํŒจํ‚ค์ง€-lock.json
  2. npm ์„ค์น˜
  3. ์„œ๋ธŒ

/../node_modules/@types/lodash/common/object.d.ts์˜ ์˜ค๋ฅ˜(1689,12): '์ œ์™ธ' ์ด๋ฆ„์„ ์ฐพ์„ ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.
/../node_modules/@types/lodash/common/object.d.ts์˜ ์˜ค๋ฅ˜(1766,12): '์ œ์™ธ' ์ด๋ฆ„์„ ์ฐพ์„ ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.
/../node_modules/@types/lodash/common/object.d.ts์˜ ์˜ค๋ฅ˜(1842,34): '์ œ์™ธ' ์ด๋ฆ„์„ ์ฐพ์„ ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.

์œ„์˜ ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ–ˆ์Šต๋‹ˆ๋‹ค. ์ด๊ฑฐ ํ•ด๊ฒฐ ๋ฐฉ๋ฒ• ์—†๋‚˜์š”??

ํŒŒ์ผ("/../node_modules/@types/lodash/common/object.d.ts")์„ " https://codeshare.io/adWzlB " ์ฝ”๋“œ๋กœ ๋ฐ”๊พธ๋ฉด ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค...

๋น„์Šทํ•œ ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ•˜์—ฌ @types/lodash์˜ "4.14.121" ๋ฒ„์ „์„ ์„ค์น˜ํ–ˆ์œผ๋ฉฐ ๋” ์•ˆ์ •์ ์ธ ๋ฒ„์ „์œผ๋กœ ๋ณด์ด๊ณ  ๋‚ด๊ฐ€ ์„ค์น˜ํ•œ typescript ๋ฒ„์ „๊ณผ ํ˜ธํ™˜๋˜๋Š” ๊ฒƒ์œผ๋กœ ์ž˜ ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค.

์ข…์†์„ฑ์€ ๋‚ด package.json ํŒŒ์ผ์—์„œ ์•„๋ž˜์™€ ๊ฐ™์Šต๋‹ˆ๋‹ค.

"์ข…์†์„ฑ": {
...........................,
"@types/lodash": "4.14.121",
"ํƒ€์ดํ”„์Šคํฌ๋ฆฝํŠธ": "2.5.3",
}

npm ํƒœ๊ทธ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ด์ „ ๋ฒ„์ „์˜ typescript์— ๋Œ€ํ•œ ์œ ํ˜•์„ ์„ค์น˜ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด typescript 2.5 npm i -D @types/[email protected] ๋Œ€ํ•œ lodash ์œ ํ˜•์ž…๋‹ˆ๋‹ค.

๋ฐฉ๊ธˆ typescript@~2.8.x ์—…๋ฐ์ดํŠธํ–ˆ๊ณ  ๋ฌธ์ œ๊ฐ€ ์‚ฌ๋ผ์กŒ์Šต๋‹ˆ๋‹ค!

@elouizbadr typescript@~2.8.x ์—…๊ทธ๋ ˆ์ด๋“œํ•œ ํ›„ ๋นŒ๋“œ ์†๋„๊ฐ€ ๋Š๋ ค์กŒ ์Šต๋‹ˆ๊นŒ? ๋นŒ๋“œ ์‹œ๊ฐ„์ด ๋„ˆ๋ฌด ์˜ค๋ž˜ ๊ฑธ๋ฆฌ๋ฉฐ 2.8.x๋กœ ์—…๊ทธ๋ ˆ์ด๋“œํ•œ ํ›„ ๊ฑฐ์˜ ๋‘ ๋ฐฐ ๋Š๋ ค์ง‘๋‹ˆ๋‹ค.

๋‚˜๋Š” ๊ฐ™์€ ๋ฌธ์ œ๊ฐ€ ์žˆ์—ˆ๊ณ  @faizu88 ๋‹จ๊ณ„๋ฅผ ๋”ฐ๋ž๊ณ  ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ–ˆ์Šต๋‹ˆ๋‹ค.

๊ฐ™์€ ๋ฌธ์ œ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. ๋‚ด ์†”๋ฃจ์…˜์€ ๋ช…๋ น ์•„๋ž˜์—์„œ ์‹คํ–‰๋ฉ๋‹ˆ๋‹ค.

CD ์•ฑ
npm install @types/ lodash @

ํฌ๋ง์€ ๋งŽ์€ ์‚ฌ๋žŒ์„ ๋„์šธ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. :)

์ด๊ฒƒ์€ ๋‚˜๋ฅผ ์œ„ํ•ด ์ผํ–ˆ์Šต๋‹ˆ๋‹ค : https://github.com/DefinitelyTyped/DefinitelyTyped/issues/33778#issuecomment -473358843 by @j-oliveras

์ด ๊ฒฝ์šฐ ๋™์ผํ•œ ๋ฒ„์ „์˜ nodejs๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ํŒ€์—์„œ ์ผํ•  ๋•Œ ์ง๋ฉดํ•˜๊ณ 
npm. ๋™์ผํ•œ ์†Œ์Šค ์ฝ”๋“œ๋กœ ๋นŒ๋“œํ•  ์ˆ˜ ์—†๊ณ  ๋‚ด ์นœ๊ตฌ dun์—๊ฒŒ ๋ฌธ์ œ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.
node_module์„ ํ™•์ธํ•˜๊ณ  lodash๋ฅผ ๋น„๊ตํ•  ๋•Œ. ๋‚˜๋Š” ๋ฒ„์ „์ด
๋‹ค๋ฅธ. ์˜ฌ๋ฐ”๋ฅธ ๋ฒ„์ „์€ 4.14.116์ž…๋‹ˆ๋‹ค.

2019๋…„ 5์›” 20์ผ ์›”์š”์ผ ์˜คํ›„ 10์‹œ 41๋ถ„ Toby Thain [email protected]
์ผ๋‹ค:

์ด์— ๋Œ€ํ•œ ๋ช…ํ™•ํ•œ ์„ค๋ช…๊ณผ ํ•ฉ๋ฆฌ์ ์ธ ํ•ด๊ฒฐ์ฑ…์ด ์žˆ์Šต๋‹ˆ๊นŒ?

โ€”
๋‹น์‹ ์ด ๋Œ“๊ธ€์„ ๋‹ฌ์•˜๊ธฐ ๋•Œ๋ฌธ์— ์ด๊ฒƒ์„ ๋ฐ›๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.
์ด ์ด๋ฉ”์ผ์— ์ง์ ‘ ๋‹ต์žฅํ•˜๊ณ  GitHub์—์„œ ํ™•์ธํ•˜์„ธ์š”.
https://github.com/DefinitelyTyped/DefinitelyTyped/issues/33778?email_source=notifications&email_token=AELTPL2WSZ6YGC5FNLAIF3TPWLBEJA5CNFSM4G5FWYT2YY3PNVWWK3TUL52HS4DFVEXG43
๋˜๋Š” ์Šค๋ ˆ๋“œ ์Œ์†Œ๊ฑฐ
https://github.com/notifications/unsubscribe-auth/AELTPL3O5YGZXAHUDSEBN3TPWLBEJANCNFSM4G5FWYTQ
.

npm i -D @types/ [email protected]

์ด ๋ช…๋ น์€ ์ €์—๊ฒŒ๋„ ํšจ๊ณผ์ ์ด์—ˆ์Šต๋‹ˆ๋‹ค.

๋ฐฉ๊ธˆ typescript@~2.8.x ์—…๋ฐ์ดํŠธํ–ˆ๊ณ  ๋ฌธ์ œ๊ฐ€ ์‚ฌ๋ผ์กŒ์Šต๋‹ˆ๋‹ค!

typescript@~2.8.2๋ฅผ ์„ค์ •ํ–ˆ๋Š”๋ฐ ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค!! ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค !!

์ด ํŽ˜์ด์ง€๊ฐ€ ๋„์›€์ด ๋˜์—ˆ๋‚˜์š”?
0 / 5 - 0 ๋“ฑ๊ธ‰