Skip to content

Commit 647e3af

Browse files
committedJun 15, 2017
Update hydration.md
1 parent 117c6e2 commit 647e3af

File tree

1 file changed

+16
-12
lines changed

1 file changed

+16
-12
lines changed
 

β€Žko/hydration.md

+16-12
Original file line numberDiff line numberDiff line change
@@ -7,21 +7,25 @@
77
app.$mount('#app')
88
```
99

10-
μ„œλ²„κ°€ 이미 λ§ˆν¬μ—…μ„ λ Œλ”λ§ ν–ˆμœΌλ―€λ‘œ, 이λ₯Ό 버리고 λͺ¨λ“  DOM μš”μ†Œλ₯Ό λ‹€μ‹œ λ§Œλ“€ν•„μš”λŠ” μ—†μŠ΅λ‹ˆλ‹€. λŒ€μ‹  정적 마크 업을 "μˆ˜ν™” (hydrate)"ν•˜μ—¬ μƒν˜Έμž‘μš©ν•˜κ²Œ λ§Œλ“€κ³  μ‹ΆμŠ΅λ‹ˆλ‹€.
10+
μ„œλ²„κ°€ 이미 λ§ˆν¬μ—…μ„ λ Œλ”λ§ ν–ˆμœΌλ―€λ‘œ, 이λ₯Ό 버리고 λͺ¨λ“  DOM μš”μ†Œλ₯Ό λ‹€μ‹œ λ§Œλ“€ ν•„μš”λŠ” μ—†μŠ΅λ‹ˆλ‹€. λŒ€μ‹  정적 마크 업을 "μˆ˜ν™” (hydrate)"ν•˜μ—¬ μƒν˜Έμž‘μš©ν•˜κ²Œ λ§Œλ“€κ³  μ‹ΆμŠ΅λ‹ˆλ‹€.
1111

1212
μ„œλ²„μ—μ„œ λ Œλ”λ§ ν•œ κ²°κ³Όλ₯Ό κ²€μ‚¬ν•˜λ©΄ μ•±μ˜ 루트 μ—˜λ¦¬λ¨ΌνŠΈμ— 특수 속성을 확인할 수 μžˆμŠ΅λ‹ˆλ‹€.
1313

1414
```js
1515
<div id="app" data-server-rendered="true">
16-
<p data-md-type="paragraph" data-md-index="16" data-segment-id="431015">특수 속성 <code data-md-type="codespan" data-md-index="14">data-server-rendered</code>은 ν΄λΌμ΄μ–ΈνŠΈ μΈ‘ Vueκ°€ λ§ˆν¬μ—…μ΄ μ„œλ²„μ— μ˜ν•΄ λ Œλ”λ§ 되고 ν•˜μ΄λ“œλ ˆμ΄μ…˜ λͺ¨λ“œλ‘œ λ§ˆμš΄νŠΈλ˜μ–΄μ•Ό ν•œλ‹€κ³  μ•Œλ¦½λ‹ˆλ‹€.</p>
17-
<p data-md-type="paragraph" data-md-index="20" data-segment-id="431016">개발 λͺ¨λ“œμ—μ„œ VueλŠ” ν΄λΌμ΄μ–ΈνŠΈ μΈ‘μ—μ„œ λ§Œλ“€μ–΄μ§„ 가상 DOM νŠΈλ¦¬κ°€ μ„œλ²„μ—μ„œ λ Œλ”λ§λœ DOMꡬ쑰와 μΌμΉ˜ν•¨μ„ λ‚˜νƒ€λƒ…λ‹ˆλ‹€. μΌμΉ˜ν•˜μ§€ μ•ŠλŠ” 뢀뢄이 있으면 ν•˜μ΄λ“œλ ˆμ΄μ…˜μ„ μ€‘λ‹¨ν•˜κ³  κΈ°μ‘΄ DOM을 μ‚­μ œν•œ ν›„ μ²˜μŒλΆ€ν„° λ Œλ”λ§ ν•©λ‹ˆλ‹€. <strong data-md-type="double_emphasis" data-md-index="19">배포 λͺ¨λ“œμ—μ„œλŠ” μ΅œλŒ€ μ„±λŠ₯을 μœ„ν•΄ assertλ₯Ό ν•˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€.</strong></p>
18-
<h3 data-md-type="header" data-md-header-level="3" data-md-index="22" data-segment-id="431014">ν•˜μ΄λ“œλ ˆμ΄μ…˜ 주의 사항</h3>
19-
<p data-md-type="paragraph" data-md-index="24" data-segment-id="431017">SSR + ν΄λΌμ΄μ–ΈνŠΈ ν•˜μ΄λ“œλ ˆμ΄μ…˜μ„ μ‚¬μš©ν•  λ•Œ μ£Όμ˜ν•΄μ•Όν•˜λŠ” 것듀 쀑 ν•˜λ‚˜λŠ” λΈŒλΌμš°μ €μ—μ„œ λ³€κ²½ν•  수 μžˆλŠ” νŠΉμˆ˜ν•œ HTML κ΅¬μ‘°μž…λ‹ˆλ‹€. 예λ₯Ό λ“€μ–΄ Vue ν…œν”Œλ¦Ώμ„ λ‹€μŒκ³Ό 같이 μž‘μ„±ν•œ κ²½μš°μž…λ‹ˆλ‹€.</p>
20-
<pre data-md-type="block_code" data-md-language="html" data-md-index="25"><code class="locki-notrack"><table>
21-
<tr><td data-segment-id="431019">hi </td></tr>
22-
</table></code></pre>
23-
<p data-md-type="paragraph" data-md-index="33" data-segment-id="481813">λΈŒλΌμš°μ €λŠ” μžλ™μœΌλ‘œ <code data-md-type="codespan" data-md-index="27"><tbody>을 <code data-md-type="codespan" data-md-index="29"><table>μ•ˆμ— μžλ™μœΌλ‘œ μ£Όμž…ν•©λ‹ˆλ‹€. ν•˜μ§€λ§Œ, Vueκ°€ μƒμ„±ν•œ 가상 DOM에 <code data-md-type="codespan" data-md-index="31"><tbody>을 μ£Όμž…ν•˜λ©΄ λΆˆμΌμΉ˜κ°€ λ°œμƒν•©λ‹ˆλ‹€. κ·ΈλŸ¬λ―€λ‘œ λ™μΌν•˜λ„λ‘ λ§Œλ“€κΈ° μœ„ν•΄ ν…œν”Œλ¦Ώμ— μœ νš¨ν•œ HTML을 μž‘μ„±ν•΄μ•Όν•©λ‹ˆλ‹€.</tbody></code>
24-
</table></code>
25-
</tbody></code></p>
26-
</div>
2716
```
17+
18+
특수 속성 `data-server-rendered`은 ν΄λΌμ΄μ–ΈνŠΈ μΈ‘ Vueκ°€ λ§ˆν¬μ—…μ΄ μ„œλ²„μ— μ˜ν•΄ λ Œλ”λ§ 되고 ν•˜μ΄λ“œλ ˆμ΄μ…˜ λͺ¨λ“œλ‘œ λ§ˆμš΄νŠΈλ˜μ–΄μ•Όν•œλ‹€κ³  μ•Œλ¦½λ‹ˆλ‹€.
19+
개발 λͺ¨λ“œμ—μ„œ VueλŠ” ν΄λΌμ΄μ–ΈνŠΈ μΈ‘μ—μ„œ λ§Œλ“€μ–΄μ§„ 가상 DOM νŠΈλ¦¬κ°€ μ„œλ²„μ—μ„œ λ Œλ”λ§λœ DOMꡬ쑰와 μΌμΉ˜ν•¨μ„ λ‚˜νƒ€λƒ…λ‹ˆλ‹€. μΌμΉ˜ν•˜μ§€ μ•ŠλŠ” 뢀뢄이 있으면 ν•˜μ΄λ“œλ ˆμ΄μ…˜μ„ μ€‘λ‹¨ν•˜κ³  κΈ°μ‘΄ DOM을 μ‚­μ œν•œ ν›„ μ²˜μŒλΆ€ν„° λ Œλ”λ§ ν•©λ‹ˆλ‹€. **배포 λͺ¨λ“œμ—μ„œλŠ” μ΅œλŒ€ μ„±λŠ₯을 μœ„ν•΄ assertλ₯Ό ν•˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€.**
20+
21+
### ν•˜μ΄λ“œλ ˆμ΄μ…˜ μ£Όμ˜μ‚¬ν•­
22+
23+
SSR + ν΄λΌμ΄μ–ΈνŠΈ ν•˜μ΄λ“œλ ˆμ΄μ…˜μ„ μ‚¬μš©ν•  λ•Œ μ£Όμ˜ν•΄μ•Όν•˜λŠ” 것듀 쀑 ν•˜λ‚˜λŠ” λΈŒλΌμš°μ €μ—μ„œ λ³€κ²½ν•  수 μžˆλŠ” νŠΉμˆ˜ν•œ HTML κ΅¬μ‘°μž…λ‹ˆλ‹€. 예λ₯Ό λ“€μ–΄ Vue ν…œν”Œλ¦Ώμ„ λ‹€μŒκ³Ό 같이 μž‘μ„±ν•œ κ²½μš°μž…λ‹ˆλ‹€.
24+
25+
```html
26+
<table>
27+
<tr><td>hi</td></tr>
28+
</table>
29+
```
30+
31+
λΈŒλΌμš°μ €λŠ” μžλ™μœΌλ‘œ `<tbody>`λ₯Ό `<table>` μ•ˆμ— μžλ™μœΌλ‘œ μ£Όμž…ν•©λ‹ˆλ‹€. ν•˜μ§€λ§Œ Vueκ°€ μƒμ„±ν•œ 가상 DOM에 `<tbody>`을 μ£Όμž…ν•˜λ©΄ λΆˆμΌμΉ˜κ°€ λ°œμƒν•©λ‹ˆλ‹€. κ·ΈλŸ¬λ―€λ‘œ λ™μΌν•˜λ„λ‘ λ§Œλ“€κΈ° μœ„ν•΄ ν…œν”Œλ¦Ώμ— μœ νš¨ν•œ HTML을 μž‘μ„±ν•΄μ•Όν•©λ‹ˆλ‹€.

0 commit comments

Comments
 (0)
Please sign in to comment.