728x90
๋ฐ์ํ
ํด๋น ์๋ฌ๋ ESLint ์ค์ ์ผ๋ก ์ธํด ๋ฐ์ํ๋ ์๋ฌ์ ๋๋ค. (์ ๋ Ariabnb๋ฅผ ์ฌ์ฉํ์ต๋๋ค.)
์๋ฌ๊ฐ ๋ฐ๊ฒฌํ ๊ณณ์ button ํ๊ทธ์ ๋๋ค.
728x90
๋ฌธ์
<button type="button" className={cx('btn-evaluation-like')} />
๋ฒํผํ๊ทธ ์์๋ ๋ด์ฉ์ด ์๊ณ , className์ ์๋ ์ด๋ฏธ์ง๋ก ๋ฒํผ์ ๋์ฒดํ๋๋ก ๋ง๋ค์์ต๋๋ค.
์ด๋ ๊ฒ ๋ ๊ฒฝ์ฐ, ๋ฒํผ์ ๋ํ ์ค๋ช ? ์ด ์๊ธฐ ๋๋ฌธ์ ๋ฐ์ํ๋ ์๋ฌ๋ก ๋ณด์ ๋๋ค.
ํด๊ฒฐ ๋ฐฉ์
<button type="button" className={cx('btn-evaluation-like')} aria-label="Like Button" />
aria-label ์์ฑ์ ์ถ๊ฐํด์ ๊ฐ๋จํ๊ฒ ์ด๋ค ๋ฒํผ์ธ์ง ๋ฃ์ด์ฃผ๋ฉด ๋ฉ๋๋ค.
์๋๋ฉด ์๋ ๊นํ๋ธ์์ ์ ๊ณตํ๋ ๊ฒ์ฒ๋ผ eslint์ค์ ์ ignoreElements๋ฅผ ์ถ๊ฐํ์๋ฉด ๋ ๊ฒ ๊ฐ์ต๋๋ค.
https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/blob/main/docs/rules/control-has-associated-label.md
728x90