eslint-config-mlint
English | 简体中文
ESLint Config for JavaScript、Typescript、Vue、React、Prettier
Installation
Least dependence:
$ npm install --save-dev eslint eslint-config-mlint eslint-plugin-import@^2.18.0
For the following types of projects, you also need to install these dependencies.
Typescript
$ npm install --save-dev @typescript-eslint/parser@^1.12.0 @typescript-eslint/eslint-plugin@^1.12.0 typescript@^3.5.3
Vue
$ npm install --save-dev eslint-plugin-vue@^5.2.3 vue-eslint-parser@^6.0.4
React
$ npm install --save-dev eslint-plugin-react@^7.4.0 eslint-plugin-react-hooks@^1.6.0
Prettier
$ npm install --save-dev prettier@^1.18.2 eslint-config-prettier@^6.0.0 eslint-plugin-prettier^3.1.0
Usage
Once the eslint-config-mlint
package is installed, you can use it by specifying mlint
in the extends
section of your ESLint configuration.
{
'extends': 'eslint-config-mlint',
'rules': {
}
}
This package provides configuration for 9 different project types.
For Es5
{
'extends': 'eslint-config-mlint/es5'
}
This configuration is for older projects that use ES5 and previous versions of JS, all using ESLint native rules.
For Es6
{
'extends': 'eslint-config-mlint'
}
This configuration is for ES6 projects, using ESLint native rules and some of the rules of the eslint-plugin-import plugin.
For Typescript
{
'extends': 'eslint-config-mlint/ts'
}
This configuration for Typescript projects inherits the above configuration of the ES6 project and enables some of the rules for the @typescript-eslint/eslint-plugin plugin, using @typescript-eslint/parser as the parser.
For Vue
{
'extends': 'eslint-config-mlint/vue'
}
This configuration is for Vue's project, inherits the above configuration of the ES6 project, and enables some of the rules of the eslint-plugin-vue plugin, using vue-eslint-parser as the parser.
For React
{
'extends': 'eslint-config-mlint/react'
}
This configuration for React projects inherits the above configuration of the ES6 project and enables some of the rules for the eslint-plugin-react and eslint-plugin-react-hooks plugins.
For Typescript + Vue
{
'extends': 'eslint-config-mlint/ts-vue'
}
This configuration for Vue + Typescript projects inherits the above configuration for Vue projects and Typescript projects.
For Typescript + React
{
'extends': 'eslint-config-mlint/ts-react'
}
This configuration for React + Typescript projects inherits the above configuration for React projects and Typescript projects.
For Prettier + Typescript
{
'extends': 'eslint-config-mlint/prettier-ts'
}
This configuration for Prettier + Typescript projects inherits the above configuration of the Typescript project and inherits eslint-config-prettier to disable partial conflict rules.
For Prettier + Typescript + Vue
{
'extends': 'eslint-config-mlint/prettier-ts-vue'
}
This configuration for Prettier + Typescript + Vue projects inherits the above configuration of the Typescript + Vue project and inherits eslint-config-prettier to disable partial conflict rules.
Editor integrations
See example:
License
MIT License
Copyright (c) 2019 minfive