Zero to Hero 경로 · 4단계 중 1단계

0%

SKIP TO CONTENT

동작하게 만들기: 첫 인터랙션

beginner~12 0/4 단계

동작하게 만들기

프로필 카드는 멋져 보여요 — 하지만 그냥 가만히 있을 뿐이죠. 클릭해도, 눌러 봐도 아무 일도 일어나지 않아요. HTML은 구조이고 Tailwind는 스타일이기 때문이에요. 동작은 JavaScript의 몫입니다.

초보자에게 아무도 알려주지 않는 비밀: 바이브 코딩에서는 JavaScript를 외우지 않아요. 무슨 일이 일어나야 하는지를 설명하면, AI가 코드를 작성합니다. 동작은 그저 한 문장이에요:

"누군가 좋아요 버튼을 클릭하면, 하트 옆 숫자가 1씩 올라간다."

이 프롬프트를 AI에 주면, 이런 작은 코드가 나옵니다:

const btn = document.getElementById("like-btn");
btn.addEventListener("click", () => {
  likes = likes + 1;
  count.textContent = likes;
});

이게 다예요. 매번 세 가지 동작이죠:

  1. 요소를 찾고 (getElementById)
  2. 이벤트를 듣고 (addEventListener("click", ...))
  3. 무언가를 바꾼다 (textContent, 클래스, 무엇이든)

찾고, 듣고, 바꾸기. 여러분이 써 본 거의 모든 웹사이트의 거의 모든 인터랙션 — 드롭다운, 다크 모드 토글, 좋아요 버튼 — 이 모두 이 패턴의 변형이에요.

이번 레슨에서는 카드에 좋아요 카운터를 추가합니다. 레슨이 끝나면, 하트를 클릭하고 여러분이 제어하는 숫자가 올라가는 걸 보게 될 거예요. 페이지가 앱이 되는 순간이죠.

안내

1

CTA 링크 아래에 하트 이모지와 <span id="like-count">0</span>이 들어간 <button id="like-btn">을 추가하세요

힌트: 이렇게 해 보세요: `<button id="like-btn" class="mt-4 w-full flex items-center justify-center gap-2 bg-white/10 hover:bg-white/20 border border-white/20 font-bold py-3 rounded-xl transition-all">❤️ <span id="like-count">0</span></button>`

2

</body> 바로 앞에 빈 <script> 태그를 추가하세요 — 동작이 사는 곳이에요

3

스크립트 안에서 버튼과 카운터, 두 요소를 잡아 오세요. 여러분이 붙인 id로 document.getElementById를 사용하세요

4

클릭을 들으세요: 버튼에 addEventListener("click", ...)을 달고 — likes를 1 늘린 다음 카운터의 textContent를 업데이트하세요

내 코드

html
49
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49

실시간 미리보기

실시간 미리보기