β¨ Prettier
μ΄ νλ‘μ νΈμμλ Prettierβλ₯Ό μ¬μ©νμ¬ μ½λ μ€νμΌμ μΌκ΄λκ² μ μ§ν©λλ€. Prettierλ μ½λμ νμμ μλμΌλ‘ μ λ¦¬ν΄ μ£Όλ©°, νμ κ°μ μ½λ μ€νμΌ μ°¨μ΄λ₯Ό μ€μ΄λ λ° λμμ μ€λλ€.
μ€ν λ°©λ²
μ½λ ν¬λ§·ν
μ prettier
CLIλ₯Ό μ¬μ©νμ¬ μνν©λλ€.
μ΄λ₯Ό μν μ€ν¬λ¦½νΈλ λ£¨νΈ λλ ν 리μ package.json
νμΌμ μ μλμ΄ μμ΅λλ€.
{
"scripts": {
"format": "prettier --write \"**/*.{ts,tsx,md}\"",
"format:check": "prettier --check \"**/*.{ts,tsx,md}\""
}
}
ν¬λ§·ν κ·μ½ μ€μ
μ΄ νλ‘μ νΈμμλ λ³λμ Prettier μ€μ νμΌμ μ¬μ©νμ§ μκ³ , κΈ°λ³Έ μ€μ μ λ°λ₯΄κ³ μμ΅λλ€.
λ§μ½ μΆκ°μ μΈ μ€μ μ΄ νμνλ€λ©΄, νλ‘μ νΈ λ£¨νΈ λλ ν 리μ .prettierrc
λ±μ νμΌμ μμ±νμ¬ μνλ κ·μΉμ μ μν μ μμ΅λλ€.
Prettier κ·μ½ μ€μ λ°©λ²μ λν λ³΄λ€ μμΈν λ΄μ©μ Prettier 곡μ λ¬Έμβλ₯Ό μ°Έκ³ νμΈμ.
ESLint μμ ν΅ν©
μ΄ νλ‘μ νΈμμλ ESLint Config μ μ€μ λ κ·μΉλ€ κ°μ΄λ°μμ Prettierμ μΆ©λνλ κ·μΉλ€μ λΉνμ±ννκ³ μ eslint-config-prettier
μ€μ μ μ μ©νκ³ μμ΅λλ€.
ν΄λΉ μ€μ μ configs/eslint-config/base.js
νμΌμ μ μλμ΄ μμ΅λλ€.
import js from "@eslint/js";
import eslintConfigPrettier from "eslint-config-prettier";
// ...
/**
* A shared ESLint configuration for the repository.
*
* @type {import("eslint").Linter.Config[]}
* */
export const config = [
js.configs.recommended,
eslintConfigPrettier,
// ... other rules
];