Pdf.js: Webpack νŒŒμ„œ: {requireEnsure: false}κ°€ μž‘λ™ν•˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€.

에 λ§Œλ“  2018λ…„ 11μ›” 14일  Β·  12μ½”λ©˜νŠΈ  Β·  좜처: mozilla/pdf.js

이것은 λ‹€μŒκ³Ό 같은 경우 Webpack v4의 λ¬Έμ œμž…λ‹ˆλ‹€.

{
νŒŒμ„œ: {μš”κ΅¬μΈμŠˆμ–΄:거짓},
}

이 좜λ ₯을 κ°–λŠ” 것:

./node_modules/pdfjs-dist/build/pdf.js 7873:6-13의 경고
μ€‘μš” 쒅속성: 쒅속성을 μ •μ μœΌλ‘œ μΆ”μΆœν•  수 μ—†λŠ” λ°©μ‹μœΌλ‘œ require ν•¨μˆ˜λ₯Ό μ‚¬μš©ν•©λ‹ˆλ‹€.

κ°€μž₯ μœ μš©ν•œ λŒ“κΈ€

ν•΄λ‹Ή κ·œμΉ™μ„ ν™œμ„±ν™”ν•˜λ©΄ μ–΄λ–€ 이점이 μžˆμŠ΅λ‹ˆκΉŒ?

ν‘œμ€€ μ–Έμ–΄ κΈ°λŠ₯이 μ•„λ‹ˆκΈ° λ•Œλ¬Έμ— create-react-app 이 requireEnsure: false μ„€μ •ν•œ 것 κ°™μŠ΅λ‹ˆλ‹€.

이것은 κ²½κ³ λ₯Ό ν‘œμ‹œν•˜κΈ° μœ„ν•΄ pdf.jsλ₯Ό μ‚¬μš©ν•˜λŠ” λͺ¨λ“  create-react-app ν”„λ‘œμ νŠΈλ‘œ μ΄μ–΄μ§‘λ‹ˆλ‹€.

./node_modules/pdfjs-dist/build/pdf.js
Critical dependency: require function is used in a way in which dependencies cannot be statically extracted

κ²½κ³ λ₯Ό νŠΈλ¦¬κ±°ν•˜μ§€ μ•ŠλŠ” λŒ€μ²΄ μ½”λ“œλ₯Ό ν¬ν•¨ν•˜λŠ” 방법이 μžˆλŠ”μ§€ μ•Œ 만큼 μΆ©λΆ„νžˆ μ΄ν•΄ν•˜μ§€ λͺ»ν•˜μ§€λ§Œ, λŒ€μ²΄λ₯Ό ν¬ν•¨ν•˜λŠ” 것이 ν•©λ¦¬μ μœΌλ‘œ λ³΄μ΄λ―€λ‘œ create-react-app 에 λŒ€ν•œ 문제λ₯Ό μ—΄κ² μŠ΅λ‹ˆλ‹€

λͺ¨λ“  12 λŒ“κΈ€

ν•΄λ‹Ή κ·œμΉ™μ„ ν™œμ„±ν™”ν•˜λ©΄ μ–΄λ–€ 이점이 있으며(기본적으둜 ν™œμ„±ν™”ν•˜μ§€ μ•ŠλŠ”λ‹€κ³  μƒκ°ν•˜λ―€λ‘œ) μ–΄λŠ λΌμΈμ—μ„œ 잘λͺ»λ©λ‹ˆκΉŒ? PDF.js μ†ŒμŠ€ μ½”λ“œμ— μžˆμŠ΅λ‹ˆκΉŒ μ•„λ‹ˆλ©΄ μƒμ„±λœ λ²ˆλ“€ μ½”λ“œμ— μžˆμŠ΅λ‹ˆκΉŒ? μ’€ 더 μžμ„Έν•œ 정보와 7873ν–‰μ˜ λ‚΄μš©μ„ μ œκ³΅ν•΄ μ£Όμ‹­μ‹œμ˜€.

Webpack 섀정이 일뢀 ν™˜κ²½μ—μ„œ μ‚¬μš©μžκ°€ μž‘μ—…μžλ₯Ό μ œλŒ€λ‘œ κ΅¬μ„±ν•˜μ§€ μ•Šμ•˜μ„ λ•Œ λŒ€μ²΄λ‘œ ν•„μš”ν•œ fakeWorkerFilesLoader μ½”λ“œ 와 ν˜Έν™˜λ˜μ§€ μ•ŠλŠ”λ‹€κ³  μƒκ°ν•©λ‹ˆλ‹€. λ”°λΌμ„œ 이 λ¬Έμ œλŠ” μ•„λ§ˆλ„ PDF.js μ‹œμ μ—μ„œ μœ νš¨ν•˜μ§€ μ•Šμ„ κ²ƒμž…λ‹ˆλ‹€. 보닀.

μš°λ¦¬κ°€ μ—¬κΈ°μ„œ μ •λ§λ‘œ ν•  수 μžˆλŠ” 것이 아무것도 μ—†λ‹€κ³  μƒκ°ν•˜κΈ° λ•Œλ¬Έμ— λ‹«μŠ΅λ‹ˆλ‹€.

ν•΄λ‹Ή κ·œμΉ™μ„ ν™œμ„±ν™”ν•˜λ©΄ μ–΄λ–€ 이점이 μžˆμŠ΅λ‹ˆκΉŒ?

ν‘œμ€€ μ–Έμ–΄ κΈ°λŠ₯이 μ•„λ‹ˆκΈ° λ•Œλ¬Έμ— create-react-app 이 requireEnsure: false μ„€μ •ν•œ 것 κ°™μŠ΅λ‹ˆλ‹€.

이것은 κ²½κ³ λ₯Ό ν‘œμ‹œν•˜κΈ° μœ„ν•΄ pdf.jsλ₯Ό μ‚¬μš©ν•˜λŠ” λͺ¨λ“  create-react-app ν”„λ‘œμ νŠΈλ‘œ μ΄μ–΄μ§‘λ‹ˆλ‹€.

./node_modules/pdfjs-dist/build/pdf.js
Critical dependency: require function is used in a way in which dependencies cannot be statically extracted

κ²½κ³ λ₯Ό νŠΈλ¦¬κ±°ν•˜μ§€ μ•ŠλŠ” λŒ€μ²΄ μ½”λ“œλ₯Ό ν¬ν•¨ν•˜λŠ” 방법이 μžˆλŠ”μ§€ μ•Œ 만큼 μΆ©λΆ„νžˆ μ΄ν•΄ν•˜μ§€ λͺ»ν•˜μ§€λ§Œ, λŒ€μ²΄λ₯Ό ν¬ν•¨ν•˜λŠ” 것이 ν•©λ¦¬μ μœΌλ‘œ λ³΄μ΄λ―€λ‘œ create-react-app 에 λŒ€ν•œ 문제λ₯Ό μ—΄κ² μŠ΅λ‹ˆλ‹€

ν™•μ‹€ν•˜μ§€ μ•Šμ§€λ§Œ 폴백 μ½”λ“œμ— λŒ€ν•œ κ°€λŠ₯ν•œ μ†”λ£¨μ…˜μ€ PDF.jsλ₯Ό es6 λͺ¨λ“ˆλ‘œ κ²Œμ‹œν•˜κ³  λ‘€μ—…κ³Ό 같은 것을 μ‚¬μš©ν•˜μ—¬ 폴백 μ½”λ“œλ₯Ό λ³„λ„λ‘œ https://github.com/mozilla/pdf둜 제곡 ν•˜λŠ” 것 κ°™μŠ΅λ‹ˆλ‹€

fakeWorkerFilesLoader μ½”λ“œλ₯Ό λ”°λ₯΄λŠ” 데 λ¬Έμ œκ°€

일뢀 ν™˜κ²½μ—μ„œλŠ” μ‚¬μš©μžκ°€ μž‘μ—…μžλ₯Ό κ΅¬μ„±ν•˜μ§€ μ•Šμ•˜μ„ λ•Œμ˜ λŒ€λΉ„μ±…μœΌλ‘œ ν•„μš”ν•©λ‹ˆλ‹€.

@Snuffleupagus에 λŒ€ν•΄ 쑰금 더 μžμ„Ένžˆ

μ •ν™•ν•œ λ¬Έμ œκ°€ μžˆμŠ΅λ‹ˆλ‹€. pdf.js(vue-pdf)λ₯Ό 기반으둜 ν•˜λŠ” ν”ŒλŸ¬κ·ΈμΈμ—μ„œ μ •ν™•ν•œ 였λ₯˜λ₯Ό κ°€μ Έμ˜΅λ‹ˆλ‹€.
λ‚΄κ°€ μ–»λŠ” 였λ₯˜λŠ” λ‹€μŒκ³Ό κ°™μŠ΅λ‹ˆλ‹€.
./node_modules/pdfjs-dist/build/pdf.js 9818:60-67의 경고
μ€‘μš” 쒅속성: require ν•¨μˆ˜λŠ” 쒅속성을 μ •μ μœΌλ‘œ μΆ”μΆœν•  수 μ—†λŠ” λ°©μ‹μœΌλ‘œ μ‚¬μš©λ©λ‹ˆλ‹€.

ν™•μ‹€ν•˜μ§€ μ•Šμ§€λ§Œ 폴백 μ½”λ“œμ— λŒ€ν•œ κ°€λŠ₯ν•œ μ†”λ£¨μ…˜μ€ PDF.jsλ₯Ό es6 λͺ¨λ“ˆλ‘œ κ²Œμ‹œν•˜κ³  λ‘€μ—…κ³Ό 같은 것을 μ‚¬μš©ν•˜μ—¬ 폴백 μ½”λ“œλ₯Ό λ³„λ„λ‘œ μ œκ³΅ν•˜λŠ” 것 κ°™μŠ΅λ‹ˆλ‹€. #10317

이것은 ν›Œλ₯­ν•  κ²ƒμž…λ‹ˆλ‹€. 이 κ²½κ³ λŠ” λͺ¨λ“  CRA ν”„λ‘œμ νŠΈμ—μ„œ 맀우 μ§œμ¦λ‚©λ‹ˆλ‹€.

@timvandermeijλŠ” μ ˆλŒ€ μˆ˜μ •λ˜μ§€ μ•Šλ‚˜μš”? κΈ°λ‹€λ €μ•Ό 할지 이사λ₯Ό ν•΄μ•Ό 할지 κ³ λ―Όμž…λ‹ˆλ‹€.

이것이 PDF.js μΈ‘μ—μ„œ μˆ˜μ •ν•΄μ•Ό ν•˜λŠ” 사항인지, κ·Έλ ‡λ‹€λ©΄ require.ensure λŒ€ν•œ λŒ€μ•ˆμ€ 무엇인지 λͺ…ν™•ν•˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€. "create-react-app"에 λŒ€ν•œ 지원을 μ œκ³΅ν•  수 μ—†μœΌλ―€λ‘œ νŠΈλž˜μ»€μ— 문제λ₯Ό μ œμΆœν•˜λŠ” 것이 κ°€μž₯ μ’‹μŠ΅λ‹ˆλ‹€.

https://github.com/mozilla/pdf.js/issues/10253#issuecomment -463377308이 문제λ₯Ό ν•΄κ²°ν•œλ‹€λ©΄ 그것은 이미 λ³„λ„μ˜ λ¬Έμ œμ—μ„œ μΆ”μ λ˜κ³  μžˆμŠ΅λ‹ˆλ‹€.

@timvandermeij μ•ˆλ…•ν•˜μ„Έμš”, 이것은 Vue.js μ„€μ •μ—μ„œ μ €μ—κ²Œ 일어났고 μ œκ°€ 찾을 수 μžˆλŠ” λͺ¨λ“  ν”ŒλŸ¬κ·ΈμΈμ„ μ‹œλ„ν–ˆμŠ΅λ‹ˆλ‹€. 그듀은 λͺ¨λ‘ pdf.jsλ₯Ό κΈ°λ°˜μœΌλ‘œν–ˆμœΌλ©° λ™μΌν•œ 였λ₯˜κ°€ λ°œμƒν–ˆμŠ΅λ‹ˆλ‹€.
WARNING in ./node_modules/pdfjs-dist/build/pdf.js 9818:60-67 Critical dependency: require function is used in a way in which dependencies cannot be statically extracted.

이 νŽ˜μ΄μ§€κ°€ 도움이 λ˜μ—ˆλ‚˜μš”?
0 / 5 - 0 λ“±κΈ‰