λ³Έλ¬Έ λ°”λ‘œκ°€κΈ°
πŸ“  archive

[Vue.js] mixin μ½”λ“œ μŠ€νƒ€μΌ κ°€μ΄λ“œ

by HandHand 2022. 2. 20.

Vue mixin μ‚¬μš© μ‹œ μΆ”μ²œν•˜λŠ” μ½”λ“œ μŠ€νƒ€μΌ

πŸ“Œ mixin μ‚¬μš© μ‹œ μ½”λ“œ μŠ€νƒ€μΌμ΄ μ€‘μš”ν•œ 이유?

νšŒμ‚¬μ—μ„œ κΈ°μ‘΄ μ†ŒμŠ€μ½”λ“œλ₯Ό λΆ„μ„ν•˜λ©° κ°€μž₯ νž˜λ“€μ—ˆλ˜ 뢀뢄은 mixin μ‚¬μš©κ³Ό κ΄€λ ¨λœ κ²ƒμ΄μ—ˆμŠ΅λ‹ˆλ‹€.

별닀λ₯Έ μ½”λ“œ μ»¨λ²€μ…˜ 없이 mixin 을 μ‚¬μš©ν•˜λ©΄ λŒ€κ·œλͺ¨ μ„œλΉ„μŠ€μ—μ„œ

ν•΄λ‹Ή μ†ŒμŠ€κ°€ μ–΄λŠ λͺ¨λ“ˆμ— ν¬ν•¨λœ 것인지 νŒŒμ•…μ΄ νž˜λ“€κ²Œ λ©λ‹ˆλ‹€.

이에 μ–΄λ–»κ²Œ ν•˜λ©΄ μ½”λ“œ 뢄석이 μš©μ΄ν•œ λ°©λ²•μœΌλ‘œ mixin 을 μ‚¬μš©ν•  수 μžˆμ„μ§€ 고민이 ν•„μš”ν–ˆμŠ΅λ‹ˆλ‹€.

 

πŸ“Œ Vue μŠ€νƒ€μΌ κ°€μ΄λ“œμ—μ„œ μ œμ‹œν•˜λŠ” 방법

const myAwesomeMixin = {
    methods: {
        $_myAwsomeMixin_update: function () { /** ... */ }
    }
}

Vue μŠ€νƒ€μΌ κ°€μ΄λ“œ μ—μ„œλŠ” μœ„μ™€ 같이 mixin 의 μ‚¬μš©μžμ •μ˜ ν”„λ‘œνΌν‹°λŠ”

$_ λΌλŠ” 접두사λ₯Ό μ΄μš©ν•˜λŠ” 것을 μΆ”μ²œν•©λ‹ˆλ‹€.

_ μ ‘λ‘μ‚¬λŠ” μ‚¬μš©ν•˜λ©΄ μ•ˆλ κΉŒ?

Vue μ—μ„œλŠ” 이미 private 속성을 μœ„ν•΄ _ 접두사λ₯Ό μ‚¬μš©ν•˜κ³  μžˆμŠ΅λ‹ˆλ‹€.
λ”°λΌμ„œ _update 와 같이 μ •μ˜ν•  경우 기쑴에 μžˆλŠ” 속성과 μΆ©λŒν•  수 있으며

운 μ’‹κ²Œ μ§€κΈˆμ€ μΆ©λŒν•˜μ§€ μ•Šλ”λΌλ„ λ‚˜μ€‘μ— 버전이 μ—…λ°μ΄νŠΈ 되며 μƒˆλ‘­κ²Œ μΆ”κ°€λ˜κ±°λ‚˜

λ³€κ²½λœ 속성듀과 좩돌이 λ°œμƒν•  κ°€λŠ₯성이 μžˆμŠ΅λ‹ˆλ‹€.

 

κ·ΈλŸ¬λ―€λ‘œ $_ 접두사 μ‚¬μš©μ„ μΆ”μ²œν•©λ‹ˆλ‹€.

 

πŸ“Œ 참고자료

What does the dollar prefix ($) mean in Vue.js?

Style Guide - Vue.js

λ°˜μ‘ν˜•

πŸ’¬ λŒ“κΈ€