Razzle: 일뢀 κ²½μš°μ— node_modulesμ˜λ‘œλ“œ CSSκ°€ μ„œλ²„μ—μ„œ μ‹€νŒ¨ν•©λ‹ˆλ‹€.

에 λ§Œλ“  2019λ…„ 07μ›” 26일  Β·  31μ½”λ©˜νŠΈ  Β·  좜처: jaredpalmer/razzle

λ‚˜λŠ” create-razzzle-app을 μ„€μ •ν•˜κ³  λ§ν¬λ“œ 인 λ‘œκ·ΈμΈμ„ μœ„ν•΄μ΄ npm λͺ¨λ“ˆμ„ μΆ”κ°€

이 npm λͺ¨λ“ˆμ—λŠ” 였λ₯˜λ₯Ό λ°œμƒμ‹œν‚€λŠ” css 및 img κ°€μ Έ μ˜€κΈ°κ°€ μžˆμŠ΅λ‹ˆλ‹€.

√ Client
  Compiled successfully in 3.39s

√ Server
  Compiled successfully in 420.40ms

C:\scoot-webapp\node_modules\react-linkedin-login-oauth2\assets\index.css:1
.btn-linkedin {
^

SyntaxError: Unexpected token .
    at Module._compile (internal/modules/cjs/loader.js:721:23)
    at Object.Module._extensions..js (internal/modules/cjs/loader.js:787:10)
    at Module.load (internal/modules/cjs/loader.js:653:32)
    at tryModuleLoad (internal/modules/cjs/loader.js:593:12)
    at Function.Module._load (internal/modules/cjs/loader.js:585:3)
    at Module.require (internal/modules/cjs/loader.js:690:17)
    at require (internal/modules/cjs/helpers.js:25:18)
    at Object.<anonymous> (C:\scoot-webapp\node_modules\react-linkedin-login-oauth2\lib\LinkedIn.js:14:1)
    at Module._compile (internal/modules/cjs/loader.js:776:30)
    at Object.Module._extensions..js (internal/modules/cjs/loader.js:787:10)

이 λͺ¨λ“ˆμ΄ μ„€μΉ˜λ˜λŠ” λ™μ•ˆ 개발 μ„œλ²„κ°€ μ‹€ν–‰ μ€‘μ΄μ—ˆμŠ΅λ‹ˆλ‹€. λ‚˜λŠ” 그것을 μΆ”κ°€ν•˜κ³  μ‚¬μš©ν–ˆμŠ΅λ‹ˆλ‹€. ν•« λ¦¬λ‘œλ“œ ν›„ 잘 μž‘λ™ν•˜λŠ” 것 κ°™μŠ΅λ‹ˆλ‹€.
κ·ΈλŸ¬λ‚˜ μ„œλ²„λ₯Ό λ‹€μ‹œ μ‹œμž‘ν•œ 후에 λ¬Έμ œκ°€ λ°œμƒν•˜μ—¬ 이제 ν•΄λ‹Ή λͺ¨λ“ˆμ—μ„œ μš”κ΅¬ν•˜λŠ” css 및 imgλ₯Ό ν•΄κ²°ν•  수 μ—†μŠ΅λ‹ˆλ‹€.

λˆ„κ΅°κ°€κ°€ webpack config λ˜λŠ” babel configλ₯Ό ν™•μž₯ν•˜μ—¬μ΄ 문제λ₯Ό ν•΄κ²°ν•˜λŠ” 방법을 μ•ˆλ‚΄ν•΄ 쀄 수 μžˆλ‹€λ©΄ 정말 도움이 될 κ²ƒμž…λ‹ˆλ‹€.

λ‚΄κ°€ 생각할 μˆ˜μžˆλŠ” λ¬Έμ œλŠ” CSS κ·œμΉ™μ— λŒ€ν•΄ razzle/config/createConfig.js λ₯Όλ³΄κ³  λ…Έλ“œμ— postcss-loader λ₯Ό μ‚¬μš©ν•˜μ§€ μ•ŠλŠ”λ‹€λŠ” κ²ƒμž…λ‹ˆλ‹€. κ·ΈλŸ¬λ‚˜ 그것이 μ‹€μ œ 원인인지 λ˜λŠ” ν•΄κ²° 방법인지 ν™•μ‹€ν•˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€.

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

devμ—μ„œ μˆ˜μ •

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

@ ravikp7 μ†”λ£¨μ…˜μ„

@Ekman μ•„λ‹ˆμš”, ν•œλ™μ•ˆ μ°Ύμ•„ 보지 μ•Šμ•˜μŠ΅λ‹ˆλ‹€.

λ‚˜λŠ” 아직도 이것을 μ•Œμ•„ λ‚΄λ €κ³  λ…Έλ ₯ν•˜κ³ μžˆλ‹€.

두 단계λ₯Ό 거쳐 CRAμ—μ„œ Razzle둜 λ§ˆμ΄κ·Έλ ˆμ΄μ…˜ν–ˆμŠ΅λ‹ˆλ‹€.

  1. CRA μ•±μ„μžˆλŠ” κ·ΈλŒ€λ‘œ, SSR 및 μΆ”κ°€ 퍼지없이 λ§ˆμ΄κ·Έλ ˆμ΄μ…˜ν•˜μ‹­μ‹œμ˜€. λ‹¨μœ„ ν…ŒμŠ€νŠΈμ™€ e2e ν…ŒμŠ€νŠΈλ₯Ό λ…Ήμƒ‰μœΌλ‘œ λ§Œλ“­λ‹ˆλ‹€.
  2. SSR ν™œμ„±ν™”-ν˜„μž¬ 진행쀑인 λ‹¨κ³„μž…λ‹ˆλ‹€.

μ™ΈλΆ€ λΌμ΄λΈŒλŸ¬λ¦¬μ—μ„œ μ°¨λ‘€λ‘œ μ°Έμ‘°λ˜λŠ” μ™ΈλΆ€ λΌμ΄λΈŒλŸ¬λ¦¬μ—μ„œ CSS νŒŒμΌμ„λ‘œλ“œν•˜λŠ” 데 λ¬Έμ œκ°€ μžˆμŠ΅λ‹ˆλ‹€.

  • 메인 ν”„λ‘œμ νŠΈμ—λŠ” 라이브러리 X의 ꡬ성 μš”μ†Œ x.js κ°€ ν¬ν•¨λ©λ‹ˆλ‹€.
  • ꡬ성 μš”μ†Œ x.js 라이브러리 Yμ—μ„œ y.css이 ν•„μš”ν•©λ‹ˆλ‹€. 라이브러리 X λŠ” y.cssλ₯Ό λ²ˆλ“€λ‘œ μ œκ³΅ν•˜μ§€ μ•Šκ³  μ°Έμ‘°

μ£Ό ν”„λ‘œμ νŠΈλŠ” 1 단계 후에 잘 μ»΄νŒŒμΌλ©λ‹ˆλ‹€.ν•˜μ§€λ§Œ SSR을 ν™œμ„±ν™”ν•˜λ €κ³ ν•˜λ©΄ λ‹€μŒ 였λ₯˜κ°€ λ°œμƒν•©λ‹ˆλ‹€.

> razzle start

 WAIT  Compiling...

Using .babelrc defined in your app root
Using .babelrc defined in your app root

√ Client
  Compiled successfully in 7.13s

√ Server
  Compiled successfully in 1.95s

(node:15016) UnhandledPromiseRejectionWarning: C:\main-project\node_modules\react-dates\lib\css\_datepicker.css:1
.PresetDateRangePicker_panel {
^

SyntaxError: Unexpected token '.'
    at Module._compile (internal/modules/cjs/loader.js:895:18)
    at Object.Module._extensions..js (internal/modules/cjs/loader.js:995:10)
    at Module.load (internal/modules/cjs/loader.js:815:32)
    at Function.Module._load (internal/modules/cjs/loader.js:727:14)
    at Module.require (internal/modules/cjs/loader.js:852:19)
    at require (internal/modules/cjs/helpers.js:74:18)
    at Object.<anonymous> (C:\main-project\node_modules\@company\libraryY\dist\cjs\index.js:29:1)
    at Module._compile (internal/modules/cjs/loader.js:959:30)
    at Object.Module._extensions..js (internal/modules/cjs/loader.js:995:10)
    at Module.load (internal/modules/cjs/loader.js:815:32)
(node:15016) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). (rejection id: 2)
(node:15016) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.

μš°λ¦¬λŠ” 라이브러리 X μ—μ„œ y.css λ₯Ό 주석 μ²˜λ¦¬ν•˜κ³  메인 ν”„λ‘œμ νŠΈμ— 직접 νŒŒμΌμ„ 포함 μ‹œμΌ°μŠ΅λ‹ˆλ‹€. λ¬Έμ œκ°€ 어디인지 μ•Œ 수 μ—†μŠ΅λ‹ˆλ‹€.

같은 였λ₯˜κ°€ λ°œμƒν–ˆμŠ΅λ‹ˆλ‹€. 아무도 해결책을 μ°Ύμ•˜μŠ΅λ‹ˆκΉŒ?

이것이 μ—¬μ „νžˆ 문제라면 λˆ„κ΅°κ°€κ°€ κ°„λ‹¨ν•œ 예λ₯Ό λ§Œλ“€ 수 μžˆμŠ΅λ‹ˆκΉŒ?

아무도 해결책을 μ°Ύμ•˜μŠ΅λ‹ˆκΉŒ?

이 문제λ₯Ό μž¬ν˜„ ν•  수 μ—†μŠ΅λ‹ˆλ‹€. κ°„λ‹¨ν•œ 예제λ₯Ό λ§Œλ“€κ±°λ‚˜ μ •ν™•ν•œ μ ˆμ°¨μ™€ ꡬ성을 보여쀄 수 μžˆμŠ΅λ‹ˆκΉŒ? 이것이 λ§Žμ€ μ‚¬λžŒλ“€μ—κ²Œ 문제라면 μš°λ¦¬λŠ” 그것을 고치고 μ‹ΆμŠ΅λ‹ˆλ‹€ πŸ˜ƒ

여기에 리포지토리λ₯Ό λ§Œλ“€κ³  κ²Œμ‹œ ν•΄ λ³΄κ² μŠ΅λ‹ˆλ‹€. (λΉ„κ³΅κ°œ) CRA 앱을 λ§ˆμ΄κ·Έλ ˆμ΄μ…˜ν•˜κ³  μžˆμ—ˆμ§€λ§Œμ΄ λ¬Έμ œμ— μ§λ©΄ν–ˆμŠ΅λ‹ˆλ‹€. modaliλΌλŠ” νŒ¨ν‚€μ§€λ₯Ό μ»΄νŒŒμΌν•˜λŠ” λ™μ•ˆ μ‹€νŒ¨ν–ˆμŠ΅λ‹ˆλ‹€. μ•„λ§ˆλ„ ν•΄λ‹Ή νŒ¨ν‚€μ§€κ°€ λ‚΄λΆ€μ μœΌλ‘œ CSS νŒŒμΌμ„ κ°€μ Έ 였기 λ•Œλ¬ΈμΌ κ²ƒμž…λ‹ˆλ‹€. 문제 쀑 ν•˜λ‚˜μ˜ μ œμ•ˆμ— 따라 razzle.config.jsμ—μ„œ config.externalsλ₯Ό μ œκ±°ν•˜μ—¬ 문제λ₯Ό ν•΄κ²°ν–ˆμŠ΅λ‹ˆλ‹€.

@fivethreeo μ•ˆλ…•ν•˜μ„Έμš”, 버그λ₯Ό μž¬ν˜„ν•˜λŠ” μž‘μ€ ν”„λ‘œμ νŠΈλ₯Ό λ§Œλ“€μ—ˆμŠ΅λ‹ˆλ‹€. https://github.com/fa7ad/razzle-bug-test μ—μ„œ μ‚΄νŽ΄λ³΄μ„Έμš”

μž¬ν˜„ 단계 :

  • μ €μž₯μ†Œ 볡제 및 쒅속성 μ„€μΉ˜
  • yarn start
  • http : // localhost : 3000으둜 이동

이 μ˜ˆμ œλŠ” razzle 3.1.0을 μ‚¬μš©ν•˜λ©°, 이제이 문제λ₯Ό ν•΄κ²°ν•  μˆ˜μžˆλŠ” 3.1.2κ°€ μžˆμŠ΅λ‹ˆλ‹€.

razzle 을 3.1.3 둜 μ—…λ°μ΄νŠΈν–ˆμ§€λ§Œ μ—¬μ „νžˆ λ™μΌν•œ λ¬Έμ œκ°€ μžˆμŠ΅λ‹ˆλ‹€ 😞

μΆ”μ‹ . 리포지토리도 μ—…λ°μ΄νŠΈν•©λ‹ˆλ‹€. λ‹€μ‹œ 확인 ν•΄μ£Όμ„Έμš”.

@ fa7ad 이유λ₯Ό μ°Ύμ•˜μŠ΅λ‹ˆλ‹€ :) https://github.com/upmostly/modali/issues/34

@ ravikp7 κ·€ν•˜μ˜ λ¬Έμ œκ°€ μ΅œκ·Όμ— μˆ˜μ • 된 문제라고 μƒκ°ν•©λ‹ˆλ‹€.

이 λ¬Έμ œλ„ λ°œμƒν•©λ‹ˆλ‹€. 이 문제λ₯Ό μ„€λͺ…ν•˜λŠ” λ² μ–΄ λ³Έ μ €μž₯μ†Œλ₯Ό λ§Œλ“€μ—ˆμŠ΅λ‹ˆλ‹€ : https://github.com/christiannaths/razzle-css-example

λ…Έλ“œ v12.18.3
razzle 3.1.6

이것은 μ„œλ²„ μ»΄νŒŒμΌμ„ μ€‘λ‹¨μ‹œν‚€λŠ” λ³€κ²½ μ‚¬ν•­μž…λ‹ˆλ‹€ (ν΄λΌμ΄μ–ΈνŠΈκ°€ 잘 μ»΄νŒŒμΌλ˜λŠ” 것 κ°™μŠ΅λ‹ˆλ‹€) https://github.com/christiannaths/razzle-css-example/commit/123e73fb31123f1615a96e3ef0567d887c7094ea

μ—¬κΈ°μ—μ„œ 찾을 μˆ˜μžˆλŠ”μ΄ λ¬Έμ œμ™€ κ΄€λ ¨λœ κ²ƒμœΌλ‘œ λ³΄μ΄λŠ” λͺ¨λ“  문제λ₯Ό μ½μ—ˆμœΌλ©°, μ†”μ§νžˆ λ§ν•˜μžλ©΄ SSR μ›ΉνŒ© / 리 μ•‘νŠΈ μ•±κ³Ό κ΄€λ ¨ν•˜μ—¬ λ­”κ°€ 빠진 것이 μžˆλŠ”μ§€ 100 % ν™•μ‹  ν•  μˆ˜λŠ” μ—†μŠ΅λ‹ˆλ‹€. μ‹€μ œλ‘œ μž‘λ™ν•˜μ§€ μ•Šμ•„μ•Ό ν•˜λŠ”κ°€ ??

μ‚¬μš©μž 지정 razzle.config.js 파일의 μ›ΉνŒ© ꡬ성을 console.log ν•˜λ©΄ web 및 node 의 css-loaderκ°€ λ‹€λ₯Έ 것을 λ³Ό 수 μžˆμŠ΅λ‹ˆλ‹€. μ™œ κ·ΈλŸ°μ§€ 잘 λͺ¨λ₯΄κ² μŠ΅λ‹ˆλ‹€. 둜컬 CSS νŒŒμΌμ„ κ°€μ Έ μ˜€λŠ” 것과 node_modules μ—μ„œ κ°€μ Έ μ˜€λŠ” 것 μ‚¬μ΄μ˜ 차이점을 μ•Œμ•„λ‚Ό 수 μ—†μŠ΅λ‹ˆλ‹€.

이 λ¬Έμ œμ— λŒ€ν•œ λͺ…ν™•ν•œ 닡변은 λŒ€λ‹¨νžˆ κ°μ‚¬ν•˜κ² μŠ΅λ‹ˆλ‹€ πŸ˜•

reset-css / reset.css μ‹œλ„

λΉ λ₯Έ λ‹΅λ³€ κ°μ‚¬ν•©λ‹ˆλ‹€. λ„€, μ•½κ°„μ˜ 전ꡬ가 μžˆμŠ΅λ‹ˆλ‹€. κ°μ‚¬ν•©λ‹ˆλ‹€.

이것이 μ—¬μ „νžˆ 이상적이지 μ•Šλ‹€κ³  μƒκ°ν•˜λŠ” 것이 잘λͺ»μž…λ‹ˆκΉŒ? λ§Žμ€ νŒ¨ν‚€μ§€κ°€ readme에 μ΄λŸ¬ν•œ μœ ν˜•μ˜ 정보λ₯Ό ν‘œμ‹œν•˜μ§€ μ•ŠμœΌλ―€λ‘œ 예제 μ €μž₯μ†Œκ°€ μž‘λ™ ν•  κ²ƒμœΌλ‘œ κΈ°λŒ€ν•©λ‹ˆλ‹€. 그렇지 μ•ŠμœΌλ©΄ 각 νŒ¨ν‚€μ§€μ˜ μ†ŒμŠ€λ₯Ό μ‚΄νŽ΄λ³΄κ³  ν•„μš”ν•œ λ‹€μ–‘ν•œ CSS 파일이 어디에 μžˆλŠ”μ§€ μ°Ύμ•„μ•Όν•©λ‹ˆλ‹€.

즉,

  • node_modules/reset-css/rest.css
  • node_modules/typeface-amiri/index.css
  • 기타

문제의 νŒ¨ν‚€μ§€λŠ” λͺ¨λ‘ package.json.main ν•­λͺ©μ— 각각의 CSS νŒŒμΌμ„ μ •μ˜ν•˜λ―€λ‘œ μ΄λŸ¬ν•œ κ°€μ Έ 였기 (css νŒŒμΌμ— λŒ€ν•œ 경둜 지정없이)κ°€ μž‘λ™ ν•  κ²ƒμœΌλ‘œ μ˜ˆμƒν•©λ‹ˆλ‹€.

main은 cjs λͺ¨λ“ˆμ˜ 경둜 μ—¬μ•Όν•œλ‹€κ³  μƒκ°ν•©λ‹ˆλ‹€. μŠ€νƒ€μΌ 잘 λͺ¨λ₯΄κ² μŠ΅λ‹ˆλ‹€. λ”°λΌμ„œ index.jsμ—λŠ” reset.cssκ°€ μžˆμ–΄μ•Όν•©λ‹ˆλ‹€.

λ„€, 말이 λ˜λ„€μš”. ν•˜μ§€λ§Œ μ†”μ§νžˆ 아직도 ν˜Όλž€ μŠ€λŸ½μŠ΅λ‹ˆλ‹€. λ‚΄κ°€ μ€€ μ˜ˆμ œλŠ” 이런 μ‹μœΌλ‘œ μž‘λ™ν•˜λŠ” μœ μΌν•œ νŒ¨ν‚€μ§€μž…λ‹ˆλ‹€. 이런 μ’…λ₯˜μ˜ 것은 λͺ¨λ“  κ³³μ—μ„œ 발견되며 기본적으둜 λ‹€λ₯Έ λ§Žμ€ μ‹œμŠ€ν…œ (next.js, create-react-app, react-static)μ—μ„œ λͺ¨λ‘ μž‘λ™ν•©λ‹ˆλ‹€.

이 문제의 핡심은 ν•΄κ²° λ°©λ²•μ΄λ‚˜ 타사 νŒ¨ν‚€μ§€ λ³€κ²½ μš”μ²­μœΌλ‘œ ν•΄κ²°λ˜μ§€ μ•ŠλŠ”λ‹€κ³  μƒκ°ν•©λ‹ˆλ‹€. μ—¬μ „νžˆ λ‚¨μ•„μžˆλŠ” 근본적인 질문이 μžˆμŠ΅λ‹ˆλ‹€.

  1. 이것이 μ„œλ²„κ°€ μ•„λ‹Œ ν΄λΌμ΄μ–ΈνŠΈμ—μ„œ μž‘λ™ν•˜λŠ” μ΄μœ λŠ” λ¬΄μ—‡μž…λ‹ˆκΉŒ?

이것이 λ³€ν™”μ˜ 후보라고 μƒκ°ν•˜μ‹œλ©΄ 기꺼이 λ…Έλ ₯ν•˜κ² μŠ΅λ‹ˆλ‹€.

해결책을 찾을 수 μžˆλ‹€λ©΄ λ‚˜λŠ” 그것을 μœ„ν•΄ λͺ¨λ‘μž…λ‹ˆλ‹€ :)

κ·Έλž˜μš” μ’‹μ•„μš”. 이것이 μ •λ§λ‘œ λ°”λžŒμ§ν•˜μ§€ μ•Šμ€ ν–‰λ™μ΄λΌλŠ” 것을 μ•”μ‹œν•˜λŠ” 것 κ°™μœΌλ―€λ‘œμ΄ 문제λ₯Ό λ‹€μ‹œ μ—΄μ–΄μ„œ 더 잘 좔적 ν•  수 μžˆλ„λ‘ κ³ λ € ν•˜μ‹œκ² μŠ΅λ‹ˆκΉŒ (그리고 여기에 μ˜€λŠ” λ‹€λ₯Έ μ‚¬λžŒλ“€μ΄μ΄ λ¬Έμ œκ°€ 진정 λ¬Έμ œλΌλŠ” 것을 μ΄ν•΄ν•˜λ„λ‘ 도와 μ£Όμ‹œκ² μŠ΅λ‹ˆκΉŒ)?

λ¬Έμ œλŠ” 메인 ν•„λ“œμ— λŒ€ν•œ κ·œμΉ™μ΄ μžˆμ§€λ§Œ 항상 μ•Όμƒμ—μ„œ λ”°λ₯΄λŠ” 것은 μ•„λ‹™λ‹ˆλ‹€.

λ‚΄κ°€ μƒκ°ν•˜λŠ” nodeexternals μ’€ 봐 :)

멋지닀, 예, webpack ꡬ성을 κ°„λž΅νžˆ μ‚΄νŽ΄λ³΄λ©΄ 그것이 λˆ„λ½ 된 κ²ƒμ²˜λŸΌ λ³΄μ˜€μŠ΅λ‹ˆλ‹€. λ‚΄κ°€ ν•  μˆ˜μžˆλŠ” ν•œ 빨리 그것을 가지고 놀 것이닀

λ‚˜λŠ” node-externalsκ°€ .css 만 직접 ν—ˆμš©ν•˜κΈ° λ•Œλ¬Έμ— 이것이 원인이라고 μƒκ°ν•©λ‹ˆλ‹€.

devμ—μ„œ μˆ˜μ •

razzle v3.3.13을 μ‚¬μš©ν•˜κ³  μžˆμŠ΅λ‹ˆλ‹€. razzle.config.js νŒŒμΌμ— ν•„μš”ν•œ λ³€κ²½ 사항은 λ¬΄μ—‡μž…λ‹ˆκΉŒ?

√ Client
  Compiled successfully in 46.33s

√ Server
  Compiled successfully in 46.04s

G:\razzle-webapp\node_modules\react-images-upload\index.css:1
.fileUploader {
^

SyntaxError: Unexpected token '.'
    at wrapSafe (internal/modules/cjs/loader.js:1072:16)
    at Module._compile (internal/modules/cjs/loader.js:1122:27)
    at Object.Module._extensions..js (internal/modules/cjs/loader.js:1178:10)
    at Module.load (internal/modules/cjs/loader.js:1002:32)
    at Function.Module._load (internal/modules/cjs/loader.js:901:14)
    at Module.require (internal/modules/cjs/loader.js:1044:19)
    at require (internal/modules/cjs/helpers.js:77:18)
    at Object.<anonymous> (G:\Webelight\adamsea-web-Fix-mansi-mar-10-add-razzle\node_modules\react-images-upload\compiled.js:17:1)
    at Module._compile (internal/modules/cjs/loader.js:1158:30)
    at Object.Module._extensions..js (internal/modules/cjs/loader.js:1178:10)

이것은 νŒ¨ν‚€μ§€κ°€ μ„œλ²„ μΈ‘μ—μ„œ ꡬ제되기 λ•Œλ¬Έμ— λ°œμƒν•©λ‹ˆλ‹€. 이 문제λ₯Ό ν•΄κ²°ν•˜λŠ” 방법을 보여주기 μœ„ν•΄ λ¬Έμ„œλ₯Ό μ—…λ°μ΄νŠΈν•˜κ² μŠ΅λ‹ˆλ‹€.

razzle 3.4.2 및 λ¬Έμ„œμ—μ„œ μˆ˜μ • 됨

https://razzlejs.org/getting-started#common -issues
https://razzle-git-canary-jared.vercel.app/getting-started#common -issues

@fivethreeo λΉ λ₯Έ 응닡과 μ†”λ£¨μ…˜μ— κ°μ‚¬λ“œλ¦½λ‹ˆλ‹€. κ½€ 잘 μž‘λ™ν•©λ‹ˆλ‹€ !!

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