eslint 2

[Vue.js, tiptap] Editor์—์„œ tab์„ ๋“ค์—ฌ์“ฐ๊ธฐ๋กœ ์‚ฌ์šฉํ•˜๊ธฐ

ํ•„์ž๋Š” Vue์—์„œ tiptap Editor๋ฅผ ์‚ฌ์šฉํ•˜๋Š”๋ฐ, ํ•œ๊ฐ€์ง€ ๋ถˆํŽธํ•œ ์ ์ด ์žˆ๋‹ค. ๋ฐ”๋กœ ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ•˜๋‹ค ๋ฌด์˜์‹์ ์œผ๋กœ tab์„ ์ž…๋ ฅํ•˜๋Š”๋ฐ, ๊ทธ๋Ÿฌ๋ฉด focus๊ฐ€ ์ด๋™ํ•ด๋ฒ„๋ฆฌ๋Š” ํ˜„์ƒ์ด๋‹ค. IDE๋“ค ์ฒ˜๋Ÿผ ๋“ค์—ฌ์“ฐ๊ธฐ(indentation)์ด ๋œ๋‹ค๋ฉด ์–ผ๋งˆ๋‚˜ ์ข‹์„๊นŒ... ํ•ด๊ฒฐํ•ด๋ด…์‹œ๋‹ค. 1. focus ๋ง‰๊ณ  tab์„ ๋„์›Œ์“ฐ๊ธฐ๋กœ ๊ต์ฒดํ•˜๊ธฐ ๋จผ์ € html์—์„œ ์–ด๋–ป๊ฒŒ tab์œผ๋กœ focus ์ด๋™์„ ๊ธˆ์ง€์‹œํ‚ค๋Š”์ง€ ์ฐพ์•„๋ณด์•˜๋Š”๋ฐ ๋‘ ๊ฐ€์ง€ ๋ฐฉ๋ฒ•์„ ์ฐพ์•˜๋‹ค. 1. ์ด๋™ํ•˜๊ณ  ์‹ถ์ง€ ์•Š์€ ๊ณณ์— tabindex=-1 ์†์„ฑ ์ถ”๊ฐ€ 2. keydown ์ด๋ฒคํŠธ๋ฅผ ์ฐพ์•„์„œ e.preventDefault() ๊ฑธ๊ธฐ ์ฒซ ๋ฒˆ์งธ ๋ฐฉ๋ฒ•์€ ์šฐ๋ฆฌ๊ฐ€ ์›ํ•˜๋Š” ๊ฒƒ์ด ์•„๋‹ˆ๋ฏ€๋กœ ํŒจ์Šค(๋ชจ๋“  elements์— ๊ฑธ์ˆ˜๋Š” ์—†์œผ๋‹ˆ). ๊ฝค๋‚˜ lowํ•œ ๋ฐฉ๋ฒ•์ด์ง€๋งŒ 2๋ฒˆ์œผ๋กœ ํ•ด๊ฒฐ ๊ฐ€๋Šฅํ•ด ๋ณด์ธ๋‹ค. h..

Programming/Vue.js 2021.11.11

[ESlint, VSCode] VSCode ESlint ์„ค์ •

nuxt๋‚˜ vue์™€ ๊ฐ™์€ ๊ณณ์—์„œ ๊ธฐ๋ณธ ์„ธํŒ…์— eslint๋ฅผ ๋„ฃ์–ด์ฃผ๋Š” ๊ฒฝ์šฐ๊ฐ€ ๋งŽ์ด ์žˆ๋Š”๋ฐ, vscode์™€ ๋™๊ธฐํ™”๊ฐ€ ์•ˆ๋˜์–ด์„œ ์ €์žฅ๋งŒํ•˜๋ฉด ์—๋Ÿฌ๊ฐ€ ๋‚  ๋•Œ๊ฐ€ ์žˆ๋‹ค. ๊ทธ๋Ÿฐ ์ƒํ™ฉ์—๋Š” { "editor.codeActionsOnSave": { "source.fixAll.eslint": true }, "eslint.alwaysShowStatus": true, "editor.formatOnSave": true } ๋˜๋Š” formatOnSave๋ฅผ ์ง€์šด { "editor.codeActionsOnSave": { "source.fixAll.eslint": true }, "eslint.alwaysShowStatus": true, } ๋ฅผ ํ˜„์žฌ ์ž‘์—…์ค‘์ธ .vscode/settings.json ์— ์ž…๋ ฅํ•ด์ฃผ๋ฉด ๋œ๋‹ค. ๋งŒ์•ฝ ํŒŒ์ผ์„ ๋ชป์ฐพ๊ฒ ๋‹ค๋ฉด ..

Programming/Vue.js 2021.11.05