Naming

μ•„λž˜κ°€ bemμ—μ„œ μ‚¬μš©ν•˜λŠ” μ˜ˆμ œμ½”λ“œμΈλ° --λ‚˜ __ ν—ˆμš©λ˜λŠ”λ“―ν•˜κ³  λͺ¨λ””νŒŒμ΄μ–΄λŠ” -같이 ν•˜λ‚˜λ§Œ μ‚¬μš©ν•˜λŠ”κ²ƒλ„ ν—ˆμš©λ˜λŠ”λ“―ν•˜λ‹€.

{BLOCK}--{ELEMENT}-{MODIFIER} ν˜•νƒœλ‘œ μž‘μ„±ν•˜λŠ”κ²ƒμ΄ 쒋아보인닀.

λ§Œμ•½ μ΄λ¦„μ—μ„œ 두 단어λ₯Ό μ‘°ν•©ν•΄μ•Όν•˜λŠ” 경우라면 redTheme둜 μ‚¬μš©ν•˜λ˜μ§€ κ΅¬λΆ„μžλ₯Ό ν”Όν•˜λŠ” red-themeλ‚˜ red_theme둜 μ‚¬μš©ν•˜μ—¬ μ‘°ν•©ν•˜λŠ”κ²ƒμ΄ 쒋아보인닀. 개인적인 κ²½ν—˜μœΌλ‘  이뢀뢄은 카멜이 더 μ’‹μ•˜λ‹€.

html
<form class="form form--theme-xmas form--simple">
  <input class="form__input" type="text" />
  <input
    class="form__submit form__submit--disabled"
    type="submit" />
</form>
css
.form { }
.form--theme-xmas { }
.form--simple { }
.form__input { }
.form__submit { }
.form__submit--disabled { }

bem style css for react native

λ‹€λ₯Έκ²ƒλ“€λ³΄λ‹€ RNμ—μ„œλŠ” BEMν˜•μ‹μœΌλ‘œ μŠ€νƒ€μΌμ„ λ§ˆν¬μ—…ν•˜λŠ”κ²ƒμ΄ κ°€μž₯ ν•©λ¦¬μ μœΌλ‘œ λ³΄μ˜€λ‹€. 아무리 μ»΄ν¬λ„ŒνŠΈλ³„λ‘œ μŠ€νƒ€μΌλ§μ„ ν•˜μ§€λ§Œ 일관적인 κ·œμΉ™μœ μ§€κ°€ κ°€λŠ₯ν•˜κ³ , DOMμ—μ„œ 인식이 쉽닀. (사싀 μš”μ†Œλ“€μ€ μŠ€νƒ€μΌμ˜ μ΄λ¦„μœΌλ‘œ μœ μΆ”ν•΄λ‚΄λŠ” κ²½μš°κ°€ λŒ€λΆ€λΆ„μ΄λ‹€.)

<View style={[css.a, css.b]} /> ν˜•νƒœλ‘œ μ™ΈλΆ€ μŠ€νƒ€μΌμ„ λΆˆλŸ¬μ™€μ„œ μ μš©ν•  수 μžˆλŠ”λ° RN의 μŠ€νƒ€μΌμ‹œνŠΈ λ§ˆν¬μ—…μ€ Object ν˜•μ‹μœΌλ‘œ μž‘μ„±ν•˜κ²Œ λœλ‹€.
κ·Έλž˜μ„œ key값에 - λ¬Έμžκ°€ λ“€μ–΄κ°ˆ 수 μ—†κΈ° λ•Œλ¬Έμ— _으둜 μ‚¬μš©ν•΄μ•Όν•˜λŠ”λ° μ‰¬ν”„νŠΈν‚€λ₯Ό 많이 λˆŒλŸ¬λŒ€λ‹ˆ νž˜λ“€λ‹€. -_-;

결과적으둜 {BLOCK}__{ELEMENT}_{MODIFIER} μ΄λŸ°ν˜•νƒœλ‘œ κ°€κ²Œ λ˜λŠ”λ° 두 단어 쑰합을 μ‚¬μš©ν•œλ‹€λ©΄ μΉ΄λ©œν‘œκΈ°λ²•μœΌλ‘œ κ°€λŠ”μˆ˜λ°–μ— μ—†μ–΄ λ³΄μ˜€λ‹€.

const style = StyleSheet.create({
  form : { }
  form__theme_xmas { }
  form__simpleBox { }
  form__submit_disabled { }
});

메타데이터

쑰회수
883
μ’‹μ•„μš”
0

0개의 λŒ“κΈ€

λ“±λ‘λœ λŒ“κΈ€μ΄ μ—†μŠ΅λ‹ˆλ‹€.