1.1.0 • Published 4 years ago

@tettoffensive/eslint-module v1.1.0

Weekly downloads
1
License
MIT
Repository
github
Last release
4 years ago

@tettoffensive/eslint-module

npm version npm downloads Circle CI Codecov License

ESLint module for Nuxt.js

📖 Release Notes

Requirements

You need to ensure that you have eslint installed:

yarn add --dev eslint # or npm install --save-dev eslint

Setup

  1. Add @tettoffensive/eslint-module dependency to your project
yarn add --dev @tettoffensive/eslint-module # or npm install --save-dev @tettoffensive/eslint-module
  1. Add @tettoffensive/eslint-module to the buildModules section of nuxt.config.js
export default {
  buildModules: [
    // Simple usage
    '@tettoffensive/eslint-module',

    // With options
    ['@tettoffensive/eslint-module', { /* module options */ }]
  ]
}

:warning: If you are using Nuxt < v2.9 you have to install the module as a dependency (No --dev or --save-dev flags) and use modules section in nuxt.config.js instead of buildModules.

Using top level options

export default {
  buildModules: [
    '@tettoffensive/eslint-module'
  ],
  eslint: {
    /* module options */
  }
}

Options

You can pass eslint options.

Note: That the config option you provide will be passed to the CLIEngine. This is a different set of options than what you'd specify in package.json or .eslintrc. See the eslint docs for more detail.

cache

  • Type: Boolean|String
  • Default: false

This option will enable caching of the linting results into a file. This is particularly useful in reducing linting time when doing a full build.

This can either be a boolean value or the cache directory path(ex: './.eslint-loader-cache').

If cache: true is used, the cache is written to the ./node_modules/.cache/eslint-loader directory. This is the recommended usage.

eslintPath

  • Type: String
  • Default: eslint

Path to eslint instance that will be used for linting. If the eslintPath is a folder like a official eslint, or specify a formatter option. Now you dont have to install eslint.

extensions

  • Type: Array[String]
  • Default: ['ts', 'js', 'vue']

Extensions that will be used by the loader.

fix

  • Type: Boolean
  • Default: false

This option will enable ESLint autofix feature.

Be careful: this option will change source files.

formatter

  • Type: String|Function
  • Default: stylish

This option accepts a function that will have one argument: an array of eslint messages (object). The function must return the output as a string. You can use official eslint formatters.

Errors and Warning

By default the loader will auto adjust error reporting depending on eslint errors/warnings counts. You can still force this behavior by using emitError or emitWarning options:

emitError

  • Type: Boolean
  • Default: false

Will always return errors, if this option is set to true.

emitWarning

  • Type: Boolean
  • Default: false

Will always return warnings, if option is set to true.

failOnError

  • Type: Boolean
  • Default: false

Will cause the module build to fail if there are any errors, if option is set to true.

failOnWarning

  • Type: Boolean
  • Default: false

Will cause the module build to fail if there are any warnings, if option is set to true.

quiet

  • Type: Boolean
  • Default: false

Will process and report errors only and ignore warnings, if this option is set to true.

outputReport

  • Type: Boolean|Object
  • Default: false

Write the output of the errors to a file, for example a checkstyle xml file for use for reporting on Jenkins CI.

The filePath is an absolute path or relative to the webpack config: output.path. You can pass in a different formatter for the output file, if none is passed in the default/configured formatter will be used.

Development

  1. Clone this repository
  2. Install dependencies using yarn install or npm install
  3. Start development server using npm run dev

License

MIT License

Copyright (c) Nuxt Community