๋ฌธ์๋ฅผ ๋ค์ ์ฝ๊ณ ์์๋๋ฐ ref๋ฅผ ์ฝ๋ฐฑ์ผ๋ก ์ ์ํ๋ ๊ฒ๊ณผ ๋ฌธ์์ด๋ก ์ ์ํ๋ ๊ฒ์ ์ฐจ์ด์ ์ด ๋ช ํํ์ง ์์ต๋๋ค.
<input ref={input => this._input = input} />
๋ <input ref="input" />
๋๊ตฐ๊ฐ ๋์๊ฒ ๋ช ํํ ํ ์ ์์ต๋๊น?
ref๋ฅผ ๋ฌธ์์ด๋ก ์ ์ํ๋ฉด this.refs
๊ฐ์ฒด์์ ์ฌ์ฉํ ์ ์์ต๋๋ค(์: this.refs.input
.
์ฝ๋ฐฑ ์ฐธ์กฐ๋ฅผ ์ ์ํ๋ฉด ์ํ๋ ๊ฒฝ์ฐ this
์ ์ ์ฅํ๋ ๊ฒ์ ํฌํจํ์ฌ ๋ฌด์์ด๋ ์์ ๋กญ๊ฒ ํ ์ ์์ต๋๋ค.
๋ฌธ์์ด refs๋ ๊ฒฐ๊ตญ ๋ ์ด์ ์ฌ์ฉ๋์ง ์์ ๊ฒ์ ๋๋ค. ์ฝ๋ฐฑ ์ฐธ์กฐ๋ ๋์ค์ ๋์ ๋์์ง๋ง ๋ฌธ์์ด ์ฐธ์กฐ์ ๋ชจ๋ ์ฌ์ฉ ์ฌ๋ก๋ฅผ ๋ค๋ฃจ๋ฉฐ ์ผ๋ถ ๋จ์ ์ด ์์ต๋๋ค. ์์ฑํ๋ ์ ์ฝ๋์์ ํญ์ ์ฝ๋ฐฑ ์ฐธ์กฐ๋ฅผ ์ฌ์ฉํ๋ ๊ฒ์ด ์ข์ต๋๋ค.
์์ผ๋ก StackOverflow์ ์ง๋ฌธํ๋ ๊ฒ์ ๊ณ ๋ คํ์ญ์์ค. ์ฐ๋ฆฌ๋ ๊ณต์์ ์ผ๋ก ์ด์ ํธ๋์ปค๋ฅผ ์ง์ ํฌ๋ผ์ผ๋ก ๊ฐ์ฃผํ์ง ์์ผ๋ฉฐ, ๋ถํํ๋ GitHub ๊ฒ์์ StackOverflow ๊ฒ์๋งํผ ์๋ํ์ง ์์ผ๋ฏ๋ก ๋๊ตฐ๊ฐ ๋ค์ ์ง๋ฌธํ ๊ฒ์ ๋๋ค. ๋ฐ๋ฉด์ ์ด๊ฒ์ StackOverflow์ ๊ฒ์ํ๋ค๋ฉด ์ข์ ๋ต๋ณ์ ์ป์ ์ ์๊ณ , ๊ทํ์ ์ง๋ฌธ์ ํฌํ๊ฐ ๋์์ ๊ฒ์ด๋ฉฐ, ๋ ๋ง์ ์ฌ๋๋ค์ด ์์ผ๋ก ๊ทธ๊ฒ์ ๋ฐฐ์ฐ๊ณ ์ฐพ์์ ๊ฒ์ ๋๋ค.
@gaearon๋ ๋ค์ํ๋ฒ ๊ฐ์ฌ๋๋ฆฝ๋๋ค. ๋ค์์๋ StackOverflow๋ฅผ ์ฌ์ฉํ๊ฒ ์ต๋๋ค.
๊ด์ฐฎ์์! ์ฐ๋ฆฌ๊ฐ ์ ์ฝ๋์์ ์ฝ๋ฐฑ ์ฐธ์กฐ ํจํด์ ๊ถ์ฅํ๋ค๋ ๊ฒ์ ๋ ๋ถ๋ช ํ๊ฒ ๋ง๋ค ์ ์๋ค๊ณ ์๊ฐ๋๋ฉด ๋ฌธ์์ ํ ๋ฆฌํ์คํธ๋ฅผ ์ ์ถํด ์ฃผ์ญ์์ค.
๊ฐ์ฅ ์ ์ฉํ ๋๊ธ
ref๋ฅผ ๋ฌธ์์ด๋ก ์ ์ํ๋ฉด
this.refs
๊ฐ์ฒด์์ ์ฌ์ฉํ ์ ์์ต๋๋ค(์:this.refs.input
.์ฝ๋ฐฑ ์ฐธ์กฐ๋ฅผ ์ ์ํ๋ฉด ์ํ๋ ๊ฒฝ์ฐ
this
์ ์ ์ฅํ๋ ๊ฒ์ ํฌํจํ์ฌ ๋ฌด์์ด๋ ์์ ๋กญ๊ฒ ํ ์ ์์ต๋๋ค.๋ฌธ์์ด refs๋ ๊ฒฐ๊ตญ ๋ ์ด์ ์ฌ์ฉ๋์ง ์์ ๊ฒ์ ๋๋ค. ์ฝ๋ฐฑ ์ฐธ์กฐ๋ ๋์ค์ ๋์ ๋์์ง๋ง ๋ฌธ์์ด ์ฐธ์กฐ์ ๋ชจ๋ ์ฌ์ฉ ์ฌ๋ก๋ฅผ ๋ค๋ฃจ๋ฉฐ ์ผ๋ถ ๋จ์ ์ด ์์ต๋๋ค. ์์ฑํ๋ ์ ์ฝ๋์์ ํญ์ ์ฝ๋ฐฑ ์ฐธ์กฐ๋ฅผ ์ฌ์ฉํ๋ ๊ฒ์ด ์ข์ต๋๋ค.
์์ผ๋ก StackOverflow์ ์ง๋ฌธํ๋ ๊ฒ์ ๊ณ ๋ คํ์ญ์์ค. ์ฐ๋ฆฌ๋ ๊ณต์์ ์ผ๋ก ์ด์ ํธ๋์ปค๋ฅผ ์ง์ ํฌ๋ผ์ผ๋ก ๊ฐ์ฃผํ์ง ์์ผ๋ฉฐ, ๋ถํํ๋ GitHub ๊ฒ์์ StackOverflow ๊ฒ์๋งํผ ์๋ํ์ง ์์ผ๋ฏ๋ก ๋๊ตฐ๊ฐ ๋ค์ ์ง๋ฌธํ ๊ฒ์ ๋๋ค. ๋ฐ๋ฉด์ ์ด๊ฒ์ StackOverflow์ ๊ฒ์ํ๋ค๋ฉด ์ข์ ๋ต๋ณ์ ์ป์ ์ ์๊ณ , ๊ทํ์ ์ง๋ฌธ์ ํฌํ๊ฐ ๋์์ ๊ฒ์ด๋ฉฐ, ๋ ๋ง์ ์ฌ๋๋ค์ด ์์ผ๋ก ๊ทธ๊ฒ์ ๋ฐฐ์ฐ๊ณ ์ฐพ์์ ๊ฒ์ ๋๋ค.