minLength 8์ ์ฌ์ฉํ์ฌ ๋น๋ฐ๋ฒํธ ์ ํ์ ์
๋ ฅํ์ผ๋ฉฐ ์ ํ์ ํ
์คํธ๋ก ๋ณ๊ฒฝํ๋ ํ ๊ธ (๋น๋ฐ๋ฒํธ ํ ๊ธ)์ด ์์ต๋๋ค.
๊ธธ์ด <8๋ก ์
๋ ฅํ๊ณ ์ ์ถ์ ๋๋ฅด๋ฉด ์ ์ถ์ด ๋ฐฉ์ง๋ฉ๋๋ค. ํ์ง๋ง ์ํธ๋ฅผ ํ ๊ธํ์ฌ ์ ํ์ ํ
์คํธ๋ก ๋ณ๊ฒฝํ๊ณ ์์์ ์ ์ถํ๋ฉด ์ ์ถํ ์ ์์ต๋๋ค. btw i useRef () ์ฌ์ฉ
๋ฐ์ ๋ฒ์ :
๋ฐ์ : ^ 17.0.1
๋ฐ์ ๋ : ^ 17.0.1
์ฝ๋ ์์ ๋งํฌ : DEMO
์์์ minLength ๋ฏธ๋ง์ธ ๊ฒฝ์ฐ์๋ ์ ์ถ๋ฉ๋๋ค.
minLength ๋ฏธ๋ง์ธ ๊ฒฝ์ฐ ์์์ด ์ ์ถ๋์ง ์์ต๋๋ค.
์ ๊ณ ํด ์ฃผ์ ์ ๊ฐ์ฌํฉ๋๋ค.
๋ ๊ฐ์ง ๋ฌธ์ ๋ฅผ ๋ฐ๊ฒฌ ํ ์ ์์ต๋๋ค.
minLength="3"
์ฌ์ฉํฉ๋๋ค.minLength
๋ IE 11์์ ์ง์๋์ง ์์ต๋๋ค. https://caniuse.com/input-minlengthMac OS 10.14.6 ๋ฐ ๋ธ๋ผ์ฐ์ Safari 13.0.5 (14608.5.12)๋ฅผ ์ฌ์ฉํ๊ณ ์์ต๋๋ค.
์์ ๊ฒ์ด ์์ต๋๋ค. ํ ๊ธ ํ ๋ฌธ์๋ฅผ ์
๋ ฅํ์ง ๋ง์ญ์์ค.
btw, Chrome 86.0.4240.183์ผ๋ก ์๋ํ๋ฉด ์ ๋๋ก ์๋ํฉ๋๋ค. ์ฌํ๋ฆฌ์์๋ง ์ผ์ด๋๋ ๊ฒ ๊ฐ์์
๊ฐ์ฌํฉ๋๋ค. ์ฌํ ํ ์ ์์ต๋๋ค.
์ผ๋ฐ์ ์ผ๋ก ์
๋ ฅ์ด ์๋ ์ํ์ด๋ฉด ๋ชจ๋ ์ ํจ์ฑ ๊ฒ์ฌ๊ฐ ๋ฌด์๋ฉ๋๋ค. ์๋ฌด๊ฒ๋ ์
๋ ฅํ์ง ์๊ณ ์์์ ์ ์ถํ๋ฉด minLength
๊ฐ ๋ฌด์๋ฉ๋๋ค.
๋ชจ๋ ์ ์ฝ ์กฐ๊ฑด์ ํต๊ณผํ์ง ๋ชปํ๋ ๊ฒ์ ์
๋ ฅ ํ ๊ฒฝ์ฐ Safari๋ ์์์ ์ ํจํ์ง ์์ ๊ฒ์ผ๋ก ์ฌ๋ฐ๋ฅด๊ฒ ํ์ํฉ๋๋ค. ๊ทธ๋ฌ๋ type
๋ณ๊ฒฝ๋๋ฉด Safari๋ ์
๋ ฅ์ ์๋ ์ํ๋ก ๊ฐ์ฃผํ๋ ๊ฒ ๊ฐ์ต๋๋ค. ๋ฐ๋ผ์ ์
๋ ฅ์ด ์๋ฃ๋ ํ type
๋ณ๊ฒฝ๋๋ฉด ์๋ชป๋ ๊ฐ์ด ์ ์ถ๋ฉ๋๋ค.
๋ฌธ์ ๋ React๊ฐ์ด ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ ์ ์๋์ง, ์๋๋ฉด Safari๊ฐ์ด ๋ฌธ์ ๋ฅผ ํด๊ฒฐํด์ผํ๋์ง ์ฌ๋ถ์ ๋๋ค.
ํธ์งํ๋ค:
๋ฐ์์์ด ์ต์ํ์ ์ฌํ : https://codesandbox.io/s/condescending-bhabha-n4374?file=/src/index.js
์ด ๋์์ด ํ์ํ๋ฉด Safari์ ๋ฒ๊ทธ๋ฅผ ์ ์ถํ๋ ๊ฒ์ด ์ข์ต๋๋ค.
๊ฐ์ฅ ์ ์ฉํ ๋๊ธ
๊ฐ์ฌํฉ๋๋ค. ์ฌํ ํ ์ ์์ต๋๋ค.
์ผ๋ฐ์ ์ผ๋ก ์ ๋ ฅ์ด ์๋ ์ํ์ด๋ฉด ๋ชจ๋ ์ ํจ์ฑ ๊ฒ์ฌ๊ฐ ๋ฌด์๋ฉ๋๋ค. ์๋ฌด๊ฒ๋ ์ ๋ ฅํ์ง ์๊ณ ์์์ ์ ์ถํ๋ฉด
minLength
๊ฐ ๋ฌด์๋ฉ๋๋ค.๋ชจ๋ ์ ์ฝ ์กฐ๊ฑด์ ํต๊ณผํ์ง ๋ชปํ๋ ๊ฒ์ ์ ๋ ฅ ํ ๊ฒฝ์ฐ Safari๋ ์์์ ์ ํจํ์ง ์์ ๊ฒ์ผ๋ก ์ฌ๋ฐ๋ฅด๊ฒ ํ์ํฉ๋๋ค. ๊ทธ๋ฌ๋
type
๋ณ๊ฒฝ๋๋ฉด Safari๋ ์ ๋ ฅ์ ์๋ ์ํ๋ก ๊ฐ์ฃผํ๋ ๊ฒ ๊ฐ์ต๋๋ค. ๋ฐ๋ผ์ ์ ๋ ฅ์ด ์๋ฃ๋ ํtype
๋ณ๊ฒฝ๋๋ฉด ์๋ชป๋ ๊ฐ์ด ์ ์ถ๋ฉ๋๋ค.๋ฌธ์ ๋ React๊ฐ์ด ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ ์ ์๋์ง, ์๋๋ฉด Safari๊ฐ์ด ๋ฌธ์ ๋ฅผ ํด๊ฒฐํด์ผํ๋์ง ์ฌ๋ถ์ ๋๋ค.
ํธ์งํ๋ค:
๋ฐ์์์ด ์ต์ํ์ ์ฌํ : https://codesandbox.io/s/condescending-bhabha-n4374?file=/src/index.js
์ด ๋์์ด ํ์ํ๋ฉด Safari์ ๋ฒ๊ทธ๋ฅผ ์ ์ถํ๋ ๊ฒ์ด ์ข์ต๋๋ค.