표준 학습 노트 규범화
문장 내용 수출원: 교육 전단 고임금 훈련소
표준화
왜 규범화 기준이 있어야 하는가
1. ESLint 소개
yarn init -y
yarn add eslint --dev
yarn eslint -v
yarn eslint 01-prepare.js
, 자동 복구yarn eslint 01-prepare.js --fix
yarn eslint --init
module.exports = {
env: {
// ,
browser: true,
es2020: true
},
// eslint
extends: [
'standard'
],
// ,
parserOptions: {
ecmaVersion: 11
},
//
rules: {
'no-alert': 'error'
},
//
globals: {
"$": 'readonly',
}
}
5. ESLint 구성 주석
코드의 주석에 설정을 쓴 다음 코드를 검사합니다
const str1 = "${name} is coder" // eslint-disable-line no-template-curly-in-string
console.log(str1)
6. ESLint 통합 자동화 도구
eslint는 loader 형식으로 JavaScript 코드를 검증합니다.
선행 작업:
reles: {
'react/jsx-uses-react': 2
},
plugins: [
'react'
]
8 현대화 프로젝트 통합 ESLint
9 ESLint 검사 TypeScript
2. 스타일 라인
1. StyleLint 사용 안내
npm install stylelint --dev
npx stylelint ./index.css
npm install stylelint-config-sass-guidelines
.stylelintrc.js
module.exports = {
extends: [
"stylelint-config-standard",
"stylelint-config-sass-guidelines"
]
}
실행:
npx stylelint ./index.css
3. Prettier의 사용최근 2년 동안 유행한 전단 코드 유니버설 포맷 도구는 거의 각종 코드의 포맷을 완성할 수 있다.
yarn add prettier --dev
현재 프로젝트에 prettier 설치yarn prettier style.css
포맷된 결과를 명령줄로 출력yarn prettier style.css --write
포맷된 결과를 원래 파일로 덮어쓰기yarn prettier . --write
현재 전체 프로젝트 포맷4. Git Hooks 소개
코드를 창고에 제출하기 전에 lint 작업을 실행합니다
.git/hooks
디렉터리에 들어간 후에 많은 Sample 파일을 보았습니다. 실행cp pre-commit.sample pre-commit
하고pre-commit 파일을 복사했습니다. 그 안의 내용을 먼저 제거하고 간단한 echo를 써서 Git 갈고리의 효과를 보십시오. (첫 번째 줄은 실행 가능한 문서가 반드시 있어야 하는 고정 문법입니다. 삭제할 수 없습니다)#!/bin/sh
echo "git hooks"
그리고 창고 루트 디렉터리로 돌아가서
git add .
,git commit -m"xx"
git hooks를 출력한 것을 보실 수 있습니다.pre-commit 이 갈고리가 이미 효력이 발생했음을 설명합니다5. ESLint와 Git Hooks 결합
많은 전방 개발자들이 셸을 잘 사용하지 못하는데, Husky는 Git Hooks의 사용 수요를 실현할 수 있다
이미 eslint가 있는Git 프로젝트에husky를 설치하여Git commit에서 lint을 실행합니다
yarn add husky --dev
package.json
{
"name": "GitHooks",
"version": "1.0.0",
"main": "index.js",
"author": "jiailing <[email protected]>",
"license": "MIT",
"scripts": {
"test": "eslint ./index.js"
},
"devDependencies": {
"eslint": "^7.3.1",
"eslint-config-standard": "^14.1.1",
"eslint-plugin-import": "^2.21.2",
"eslint-plugin-node": "^11.1.0",
"eslint-plugin-promise": "^4.2.1",
"eslint-plugin-standard": "^4.0.1",
"husky": "^4.2.5"
},
"husky": {
"hooks": {
"pre-commit": "yarn test"
}
}
}
그리고 집행
echo node_modules > .gitignore
git add .
git commit -m "husky"
저희 index를 보실 수 있습니다.js의 코드 오류가 콘솔에 출력되었고 Git commit이 실패했습니다.
husky가 코드 제출 전lint 작업을 완료했음을 설명합니다.그러나 husky는 코드를 포맷할 수 없습니다. 이때lint-stage를 사용할 수 있습니다
yarn add lint-staged --dev
package.json
{
"name": "GitHooks",
"version": "1.0.0",
"main": "index.js",
"author": "jiailing <[email protected]>",
"license": "MIT",
"scripts": {
"test": "eslint ./index.js",
"precommit": "lint-staged"
},
"devDependencies": {
"eslint": "^7.3.1",
"eslint-config-standard": "^14.1.1",
"eslint-plugin-import": "^2.21.2",
"eslint-plugin-node": "^11.1.0",
"eslint-plugin-promise": "^4.2.1",
"eslint-plugin-standard": "^4.0.1",
"husky": "^4.2.5",
"lint-staged": "^10.2.11"
},
"husky": {
"hooks": {
"pre-commit": "yarn precommit"
}
},
"lint-staged": {
"*.js": [
"eslint",
"git add"
]
}
}
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
bootstrap 그리드 시스템을 어떻게 사용합니까?[bootstrap 그리드 시스템은 어떻게 사용합니까?] 의 Breaking News에서 이 프로젝트를 사용했습니다.국내 일부 모바일 개발자에게 익숙한 프레임워크, 예를 들어 WeX5 프런트엔드 사용할 때 LESS(...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.