Package Exports
- vue-eslint-parser
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (vue-eslint-parser) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
vue-eslint-parser
The ESLint custom parser for .vue files.
ESLint supports autofix on custom parsers but does not support autofix on plugins which have processors (eslint/eslint#7510). The motivation of this custom parser is that it supports autofix on .vue files.
💿 Installation
$ npm install --save-dev eslint vue-eslint-parservue-eslint-parserrequires ESLint 3.9.0 or later.
📖 Usage
- Write
parseroption in your.eslintrc.*file. - Use glob patterns or
--ext .vueCLI option.
{
"extends": "eslint:recommended",
"parser": "vue-eslint-parser"
}$ eslint "src/**/*.{js,vue}"
# or
$ eslint src --ext .vue🔧 Options
parserOptions has the same properties as what espree, the default parser of ESLint, is supporting.
For example:
{
"parser": "vue-eslint-parser",
"parserOptions": {
"sourceType": "module",
"ecmaVersion": 2017,
"ecmaFeatures": {
"globalReturn": false,
"impliedStrict": false,
"jsx": false,
"experimentalObjectRestSpread": false
}
}
}Also, you can use parser property to specify a custom parser to parse <script> tags.
Other properties than parser would be given to the specified parser.
For example:
{
"parser": "vue-eslint-parser",
"parserOptions": {
"parser": "babel-eslint",
"sourceType": "module",
"allowImportExportEverywhere": false
}
}{
"parser": "vue-eslint-parser",
"parserOptions": {
"parser": "typescript-eslint-parser"
}
}⚠️ Known Limitations
Some rules make warnings due to the outside of <script> tags.
Please disable those rules for .vue files as necessary.
- eol-last
- linebreak-style
- max-len
- max-lines
- no-trailing-spaces
- unicode-bom
- Other rules which are using the source code text instead of AST might be confused as well.
📰 Changelog
💪 Contributing
Welcome contributing!
Please use GitHub's Issues/PRs.
Development Tools
npm testruns tests and measures coverage.npm run coverageshows the coverage result ofnpm testcommand with the default browser.npm run cleanremoves the coverage result ofnpm testcommand.npm run lintruns ESLint.npm run watchruns tests with--watchoption.