이번에는 React 개발 시 eslint 구성에 대해 알려드리겠습니다. React 개발 eslint 구성 시 주의사항은 무엇인가요? 실제 사례를 살펴보겠습니다.
Eslint 소개
Eslint는 JavaScript 확인 도구입니다. 이 도구를 사용하면 편집기에서 설치해야 하는
eslint 설치
$ npm install eslint -g
플러그인과 같은 일부 정적 오류 프롬프트 기능을 수행할 수 있습니다. 프로젝트
"babel-eslint": "^8.0.3",
"eslint": "^4.13.1",
"eslint-plugin-react": "^7.5. 1",
구성 세부 정보
다음 구성은 개발자에게 필요한 대부분의 정보를 다룹니다. 규칙의 0, 1, 2 값은 각각 확인, 경고, 오류를 활성화하지 않음을 의미합니다. 아래 값 중 일부가 0인 것을 확인할 수 있습니다. 체크를 켜야 할 경우 1 또는 2로 변경할 수 있습니다.
module.exports = { "env": { "browser": true, "commonjs": true, "es6": true }, "extends": "eslint:recommended", "globals": { "$": true, "process": true, "dirname": true }, "parser": "babel-eslint", "parserOptions": { "ecmaFeatures": { "experimentalObjectRestSpread": true, "jsx": true }, "sourceType": "module", "ecmaVersion": 7 }, "plugins": [ "react" ], "rules": { "quotes": [2, "single"], //单引号 "no-console": 0, //不禁用console "no-debugger": 2, //禁用debugger "no-var": 0, //对var警告 "semi": 0, //不强制使用分号 "no-irregular-whitespace": 0, //不规则的空白不允许 "no-trailing-spaces": 1, //一行结束后面有空格就发出警告 "eol-last": 0, //文件以单一的换行符结束 "no-unused-vars": [2, {"vars": "all", "args": "after-used"}], //不能有声明后未被使用的变量或参数 "no-underscore-dangle": 0, //标识符不能以_开头或结尾 "no-alert": 2, //禁止使用alert confirm prompt "no-lone-blocks": 0, //禁止不必要的嵌套块 "no-class-assign": 2, //禁止给类赋值 "no-cond-assign": 2, //禁止在条件表达式中使用赋值语句 "no-const-assign": 2, //禁止修改const声明的变量 "no-delete-var": 2, //不能对var声明的变量使用delete操作符 "no-dupe-keys": 2, //在创建对象字面量时不允许键重复 "no-duplicate-case": 2, //switch中的case标签不能重复 "no-dupe-args": 2, //函数参数不能重复 "no-empty": 2, //块语句中的内容不能为空 "no-func-assign": 2, //禁止重复的函数声明 "no-invalid-this": 0, //禁止无效的this,只能用在构造器,类,对象字面量 "no-redeclare": 2, //禁止重复声明变量 "no-spaced-func": 2, //函数调用时 函数名与()之间不能有空格 "no-this-before-super": 0, //在调用super()之前不能使用this或super "no-undef": 2, //不能有未定义的变量 "no-use-before-define": 2, //未定义前不能使用 "camelcase": 0, //强制驼峰法命名 "jsx-quotes": [2, "prefer-double"], //强制在JSX属性(jsx-quotes)中一致使用双引号 "react/display-name": 0, //防止在React组件定义中丢失displayName "react/forbid-prop-types": [2, {"forbid": ["any"]}], //禁止某些propTypes "react/jsx-boolean-value": 2, //在JSX中强制布尔属性符号 "react/jsx-closing-bracket-location": 1, //在JSX中验证右括号位置 "react/jsx-curly-spacing": [2, {"when": "never", "children": true}], //在JSX属性和表达式中加强或禁止大括号内的空格。 "react/jsx-indent-props": [2, 4], //验证JSX中的props缩进 "react/jsx-key": 2, //在数组或迭代器中验证JSX具有key属性 "react/jsx-max-props-per-line": [1, {"maximum": 1}], // 限制JSX中单行上的props的最大数量 "react/jsx-no-bind": 0, //JSX中不允许使用箭头函数和bind "react/jsx-no-duplicate-props": 2, //防止在JSX中重复的props "react/jsx-no-literals": 0, //防止使用未包装的JSX字符串 "react/jsx-no-undef": 1, //在JSX中禁止未声明的变量 "react/jsx-pascal-case": 0, //为用户定义的JSX组件强制使用PascalCase "react/jsx-sort-props": 2, //强化props按字母排序 "react/jsx-uses-react": 1, //防止反应被错误地标记为未使用 "react/jsx-uses-vars": 2, //防止在JSX中使用的变量被错误地标记为未使用 "react/no-danger": 0, //防止使用危险的JSX属性 "react/no-did-mount-set-state": 0, //防止在componentDidMount中使用setState "react/no-did-update-set-state": 1, //防止在componentDidUpdate中使用setState "react/no-direct-mutation-state": 2, //防止this.state的直接变异 "react/no-multi-comp": 2, //防止每个文件有多个组件定义 "react/no-set-state": 0, //防止使用setState "react/no-unknown-property": 2, //防止使用未知的DOM属性 "react/prefer-es6-class": 2, //为React组件强制执行ES5或ES6类 "react/prop-types": 0, //防止在React组件定义中丢失props验证 "react/react-in-jsx-scope": 2, //使用JSX时防止丢失React "react/self-closing-comp": 0, //防止没有children的组件的额外结束标签 "react/sort-comp": 2, //强制组件方法顺序 "no-extra-boolean-cast": 0, //禁止不必要的bool转换 "react/no-array-index-key": 0, //防止在数组中遍历中使用数组key做索引 "react/no-deprecated": 1, //不使用弃用的方法 "react/jsx-equals-spacing": 2, //在JSX属性中强制或禁止等号周围的空格 "no-unreachable": 1, //不能有无法执行的代码 "comma-dangle": 2, //对象字面量项尾不能有逗号 "no-mixed-spaces-and-tabs": 0, //禁止混用tab和空格 "prefer-arrow-callback": 0, //比较喜欢箭头回调 "arrow-parens": 0, //箭头函数用小括号括起来 "arrow-spacing": 0 //=>的前/后括号 }, "settings": { "import/ignore": [ "node_modules" ] } };
아, 아직도 더 많은 리액트 체커를 보고 싶다면 eslint-plugin-react의 github 문서로 가서 천천히 번역해보세요.
일부 파일에 대해 eslint 검사 끄기
항상 모든 파일에서 eslint 검사를 켜는 것을 원하지는 않습니다. 그런 다음 별도의 js 파일에 대해 eslint를 끄려면 상단에 주석만 추가하면 됩니다. 파일.
/*eslint-disable*/ function test() { return true }
js 코드의 특정 줄에 대해 eslint 검사를 끄세요
전체 js 파일을 닫는 행위는 약간 폭력적이므로 걱정하지 마세요. 특정 코드 부분에 대해서만 eslint를 끌 수도 있습니다.
// eslint-disable-next-line alert('foo')
eslint구성 파일type
eslint 구성 파일 유형은 js 및 json뿐만 아니라 다음도 포함합니다:
.eslintrc.js
.eslintrc.yaml
-
.eslintrc .yml
.eslintrc.json
.eslintrc
package.json
이 기사의 사례를 읽은 후 방법을 마스터했다고 믿습니다. PHP 중국어 웹사이트의 다른 관련 기사도 주목해 보세요!
추천 자료:
위 내용은 React 개발 중 eslint 구성의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

在react中,antd是基于Ant Design的React UI组件库,主要用于研发企业级中后台产品;dva是一个基于redux和“redux-saga”的数据流方案,内置了“react-router”和fetch,可理解为应用框架。

React不是双向数据流,而是单向数据流。单向数据流是指数据在某个节点被改动后,只会影响一个方向上的其他节点;React中的表现就是数据主要通过props从父节点传递到子节点,若父级的某个props改变了,React会重渲染所有子节点。

react删除eslint的方法:1、执行“npm run eject”命令;2、在package.json中修改代码为“ "eslintConfig": {"extends": ["react-app","react-app/jest"],"rules": {"no-undef": "off"...}”;3、重启项目即可。

因为在react中需要利用到webpack,而webpack依赖nodejs;webpack是一个模块打包机,在执行打包压缩的时候是依赖nodejs的,没有nodejs就不能使用webpack,所以react需要使用nodejs。

在react中,forceupdate()用于强制使组件跳过shouldComponentUpdate(),直接调用render(),可以触发组件的正常生命周期方法,语法为“component.forceUpdate(callback)”。

react是组件化开发;组件化是React的核心思想,可以开发出一个个独立可复用的小组件来构造应用,任何的应用都会被抽象成一颗组件树,组件化开发也就是将一个页面拆分成一个个小的功能模块,每个功能完成自己这部分独立功能。

react与vue的虚拟dom没有区别;react和vue的虚拟dom都是用js对象来模拟真实DOM,用虚拟DOM的diff来最小化更新真实DOM,可以减小不必要的性能损耗,按颗粒度分为不同的类型比较同层级dom节点,进行增、删、移的操作。

react和reactdom的区别是:ReactDom只做和浏览器或DOM相关的操作,例如“ReactDOM.findDOMNode()”操作;而react负责除浏览器和DOM以外的相关操作,ReactDom是React的一部分。


핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

AI Hentai Generator
AI Hentai를 무료로 생성하십시오.

인기 기사

뜨거운 도구

SublimeText3 Mac 버전
신 수준의 코드 편집 소프트웨어(SublimeText3)

mPDF
mPDF는 UTF-8로 인코딩된 HTML에서 PDF 파일을 생성할 수 있는 PHP 라이브러리입니다. 원저자인 Ian Back은 자신의 웹 사이트에서 "즉시" PDF 파일을 출력하고 다양한 언어를 처리하기 위해 mPDF를 작성했습니다. HTML2FPDF와 같은 원본 스크립트보다 유니코드 글꼴을 사용할 때 속도가 느리고 더 큰 파일을 생성하지만 CSS 스타일 등을 지원하고 많은 개선 사항이 있습니다. RTL(아랍어, 히브리어), CJK(중국어, 일본어, 한국어)를 포함한 거의 모든 언어를 지원합니다. 중첩된 블록 수준 요소(예: P, DIV)를 지원합니다.

SublimeText3 중국어 버전
중국어 버전, 사용하기 매우 쉽습니다.

에디트플러스 중국어 크랙 버전
작은 크기, 구문 강조, 코드 프롬프트 기능을 지원하지 않음

VSCode Windows 64비트 다운로드
Microsoft에서 출시한 강력한 무료 IDE 편집기
