-
Notifications
You must be signed in to change notification settings - Fork 11
Eslint Prettier
๋จ์ ํธ edited this page Nov 12, 2019
·
2 revisions
- ์ค์น
npm install eslint-plugin-import eslint-config-airbnb-base --save-dev
- config ์ค์
.eslintrc
module.exports = {
"parserOptions": {
"ecmaVersion": 9
},
"extends": ["airbnb-base", "prettier"],
"env": {
"browser": true,
"node": true,
},
"plugins": ['import', "prettier"],
"rules": {
"prettier/prettier": "error"
}
};
.prettier
{
"singleQuote": true, // " " ๋์ ' ' ๋ฅผ ์ฌ์ฉ
"semi": true, // ๋ฌธ์ฅ ๋์๋ ; ๋ฅผ ๋ถ์ฌ์ค
"useTabs": false, // ํญ์ ๋๋ฅด๋ฉด tab์ด ์๋๊ณ ์คํ์ด์ค ์ฌ๋ฌ ์นธ์ด ๋ค์ด๊ฐ
"tabWidth": 2, // ํญ ๊ฐ๊ฒฉ์ ์คํ์ด์ค 2์นธ์ผ๋ก ํจ
"trailingComma": "all", // ๊ฐ์ฒด์ ๋ง์ง๋ง ์์ ๋ค์ , ๋ฅผ ๋ถ์ฌ์ค
"printWidth": 80 // ํ ์ค์ ๊ธธ์ด๊ฐ 80์ ๋์ง ์๋๋ก ํจ
}
settings.json
{
...
"editor.formatOnSave": true,
"eslint.autoFixOnSave": true
}
- npm ํจํค์ง ์ค์น
npm install --save-dev eslint-config-airbnb eslint eslint-plugin-jsx-a11y eslint-plugin-import eslint-plugin-react eslint-plugin-react-hooks eslint-config-prettier prettier
-
config ์ค์
.eslintrc.js
module.exports = { extends: ['react-app', 'airbnb', 'airbnb/hooks', 'prettier'], plugins: ['react', 'jsx-a11y', 'import', 'prettier'], rules: { 'react/jsx-one-expression-per-line': 0, 'react/jsx-filename-extension': 0, 'prettier/prettier': 'error', }, };
.prettier
{
"singleQuote": true, // " " ๋์ ' ' ๋ฅผ ์ฌ์ฉ
"semi": true, // ๋ฌธ์ฅ ๋์๋ ; ๋ฅผ ๋ถ์ฌ์ค
"useTabs": false, // ํญ์ ๋๋ฅด๋ฉด tab์ด ์๋๊ณ ์คํ์ด์ค ์ฌ๋ฌ ์นธ์ด ๋ค์ด๊ฐ
"tabWidth": 2, // ํญ ๊ฐ๊ฒฉ์ ์คํ์ด์ค 2์นธ์ผ๋ก ํจ
"trailingComma": "all", // ๊ฐ์ฒด์ ๋ง์ง๋ง ์์ ๋ค์ , ๋ฅผ ๋ถ์ฌ์ค
"printWidth": 80 // ํ ์ค์ ๊ธธ์ด๊ฐ 80์ ๋์ง ์๋๋ก ํจ
}
settings.json
{
...
"editor.formatOnSave": true,
"eslint.autoFixOnSave": true
}
** extends์ 'react-app'์ด ์์ผ๋ฉด .eslintrc.js ํ์ผ์ด ์๋ ๊ณณ์ root๋ก ์ด์ด์ผ์ง ์๋ฌ๊ฐ ์๋ฉ๋๋ค.