@@ -3,32 +3,62 @@ import Component from '@/core/Component';
3
3
import styles from './styles.module.css' ;
4
4
5
5
class Header extends Component {
6
+ setup ( ) {
7
+ this . state = { open : false } ;
8
+ }
9
+
10
+ didUpdate ( ) {
11
+ console . log ( this . state ) ;
12
+ }
13
+
6
14
template ( ) {
7
15
return `
8
16
<header>
9
17
<div class=${ styles . header__container } >
10
- <div class=${ styles . header__wrapper } >
18
+ <div class=${ styles . header__wrapper } >
11
19
<div class=${ styles . header__inner } >
12
- <div class="header__logo">
13
- <div class=${ styles . logo } >
14
- <a href="/" data-link>
15
- <img src="/img/logo.png" />
16
- </a>
20
+ <div class=${ styles . header__logo } >
21
+ <div class=${ styles . logo } >
22
+ <a href="/" data-link>
23
+ <img src="/img/logo.png" />
24
+ </a>
25
+ </div>
26
+ <div class=${ styles . header__btn } >${
27
+ this . state . open
28
+ ? '닫기'
29
+ : '<i class="fa-solid fa-bars"></i>'
30
+ } </div>
17
31
</div>
32
+
33
+ <div class=${
34
+ this . state . open
35
+ ? `${ styles . opend__nav } `
36
+ : `${ styles . closed__nav } `
37
+ } >
38
+ <ul class=${ styles . nav__list } >
39
+ <li class=${
40
+ styles . nav__item
41
+ } ><a href="/design" data-link>디자인</a></li>
42
+ <li class=${
43
+ styles . nav__item
44
+ } ><a href="/" data-link>개발</a></li>
45
+ <li class=${
46
+ styles . nav__item
47
+ } ><button>채용 바로가기</button></li>
48
+ </ul>
49
+ </div>
18
50
</div>
19
- <div class="header__nav">
20
- <ul class=${ styles . nav__list } >
21
- <li class=${ styles . nav__item } ><a href="/design" data-link>디자인</a></li>
22
- <li class=${ styles . nav__item } ><a href="/" data-link>개발</a></li>
23
- <li class=${ styles . nav__item } ><button>채용 바로가기</button></li>
24
- </ul>
25
- </div>
26
- </div>
27
- </div>
51
+ </div>
28
52
</div>
29
53
</header>
30
54
` ;
31
55
}
56
+
57
+ setEvent ( ) {
58
+ this . addEvent ( 'click' , `.${ styles . header__btn } ` , ( ) => {
59
+ this . setState ( { open : ! this . state . open } ) ;
60
+ } ) ;
61
+ }
32
62
}
33
63
34
64
export default Header ;
0 commit comments