mirror of
https://github.com/nuxt/nuxt.git
synced 2024-11-25 07:05:11 +00:00
docs: update the code style page (#26792)
This commit is contained in:
parent
f0a81b21b0
commit
6e6cfe96ea
@ -5,76 +5,20 @@ description: "Nuxt supports ESLint out of the box"
|
||||
|
||||
## ESLint
|
||||
|
||||
The recommended approach for Nuxt is to enable ESLint support using [`@nuxt/eslint-config`](https://github.com/nuxt/eslint-config).
|
||||
The recommended approach for Nuxt is to enable ESLint support using the [`@nuxt/eslint`](https://eslint.nuxt.com/packages/module) module, that will setup project-aware ESLint configuration for you.
|
||||
|
||||
At the moment, this configuration will not format your files; you can set up Prettier or another tool to do so.
|
||||
:::callout{icon="i-ph-lightbulb-duotone"}
|
||||
The module is designed for the [new ESLint flat config format](https://eslint.org/docs/latest/use/configure/configuration-files-new) with is the [default format since ESLint v9](https://eslint.org/blog/2024/04/eslint-v9.0.0-released/).
|
||||
|
||||
::alert{type=info}
|
||||
We're currently working to refactor the Nuxt ESLint configuration. Subscribe to the [Nuxt ESLint roadmap](https://github.com/nuxt/eslint-config/issues/303) to follow updates.
|
||||
::
|
||||
If you are using the legacy `.eslintrc` config, you will need to [configure manually with `@nuxt/eslint-config`](https://eslint.nuxt.com/packages/config#legacy-config-format). We highly recommand you to migrate over the flat config to be future-proof.
|
||||
:::
|
||||
|
||||
### Install Dependencies
|
||||
## Quick Setup
|
||||
|
||||
Install both ESLint and the Nuxt configuration as development dependencies.
|
||||
|
||||
::code-group
|
||||
|
||||
```bash [yarn]
|
||||
yarn add --dev eslint @nuxt/eslint-config
|
||||
```bash
|
||||
npx nuxi module add eslint
|
||||
```
|
||||
|
||||
```bash [npm]
|
||||
npm install --save-dev eslint @nuxt/eslint-config
|
||||
```
|
||||
Start your Nuxt app, a `eslint.config.mjs` file will be generated under your project root. You can customize it as needed.
|
||||
|
||||
```bash [pnpm]
|
||||
pnpm add -D eslint @nuxt/eslint-config
|
||||
```
|
||||
|
||||
```bash [bun]
|
||||
bun add -D eslint @nuxt/eslint-config
|
||||
```
|
||||
|
||||
::
|
||||
|
||||
### Configuration
|
||||
|
||||
Add `.eslintrc.cjs` to the root folder of your Nuxt app.
|
||||
|
||||
```js
|
||||
module.exports = {
|
||||
root: true,
|
||||
extends: ['@nuxt/eslint-config'],
|
||||
}
|
||||
```
|
||||
|
||||
### Modify package.json
|
||||
|
||||
Add the below to lint commands to your `package.json` script section:
|
||||
|
||||
```json
|
||||
"scripts": {
|
||||
...
|
||||
"lint": "eslint .",
|
||||
"lint:fix": "eslint . --fix",
|
||||
...
|
||||
},
|
||||
```
|
||||
|
||||
Run the `lint` command to check if the code style is correct or run `lint:fix` to automatically fix issues.
|
||||
|
||||
### Configuring VS Code
|
||||
|
||||
Install the [VS Code ESLint extension](https://marketplace.visualstudio.com/items?itemName=dbaeumer.vscode-eslint).
|
||||
|
||||
In VS Code press `ctrl+shift+p` (`cmd+shift+p` on Mac) to open the command prompt, find `Open Workspace Settings (JSON)`, add the below lines to the JSON and save:
|
||||
|
||||
```json
|
||||
{
|
||||
"editor.codeActionsOnSave": {
|
||||
"source.fixAll.eslint": "explicit"
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
You're good to go! On save, your files will be linted and auto-fixed.
|
||||
You can learn more about the module and customizations in [Nuxt ESLint's documentation](https://eslint.nuxt.com/packages/module).
|
||||
|
Loading…
Reference in New Issue
Block a user