可以使用 `--fix` 选项修复

问题描述 投票:0回答:6

我正在使用 nuxt.js 创建一个应用程序,但每次我启动该应用程序时,都会给我 eslint 的错误并说“可能可以使用

--fix
选项修复。”

我执行了命令

npm run lint -- --fix
并且它有效但是如果我在任何 vue 文件中进行另一个更改它再次出现相同的错误我必须再次执行

知道如何解决这个问题吗?

vue.js eslint nuxt.js
6个回答
46
投票

在 nuxt 配置文件中使用以下配置:

build: {
  extend(config, ctx) {
    config.module.rules.push({
      enforce: 'pre',
      test: /\.(js|vue)$/,
      loader: 'eslint-loader',
      exclude: /(node_modules)/,
      options: {
        fix: true
      }
    })
  }
}

重要的部分是:

options: {
  fix: true
}

9
投票

扩展

nuxt.config.js
文件中的构建

build: {
  extend(config, ctx) {
    config.module.rules.push({
      enforce: "pre",
      test: /\.(js|vue)$/,
      loader: "eslint-loader",
      exclude: /(node_modules)/,
      options: {
        fix: true
      }
    })
  }
}

6
投票

如果有人在使用 Cloud Functions 时遇到这个问题,试试这个。在

package.json
文件夹中找到
functions
文件,替换

"lint": "eslint --ext .js,.ts .",

"lint": "eslint --ext .js,.ts . --fix",

然后再次运行命令:

firebase deploy --only functions

它应该解决所有可修复的问题。如果还有任何错误(有时还剩下 1 或 2 个错误)找到那个错误并手动编辑,瞧,它就可以工作了。


2
投票

如果您使用的是 VScode,我建议在您的项目中进行完整的 ESlint 配置,正如我在此处解释的那样

拥有这个 ESlint 扩展 并且在您的

settings.json
中(可通过命令面板访问)

{
  "editor.codeActionsOnSave": {
    "source.fixAll": true, // this one will fix it on save for you
  },
  "eslint.options": {
    "extensions": [
      ".html",
      ".js",
      ".vue",
      ".jsx",
    ]
  },
  "eslint.validate": [
    "javascript",
    "javascriptreact",
    "typescript",
    "typescriptreact",
    "html",
    "vue",
  ],
}

在像这样的简单

.eslintrc.js
文件之上

module.exports = {
  root: true,
  env: {
    browser: true,
    node: true,
  },
  parserOptions: {
    parser: '@babel/eslint-parser',
    requireConfigFile: false,
  },
  extends: ['@nuxtjs']
}

在设置用户界面中紧随其后,应该会给你一个很棒的 DX。


1
投票

遇到这个错误,可以使用'--fix'选项修复。,不幸的是

npm run lint -- --fix
没有做任何事情。运行
npm run format
修复了错误。

  • lint
    用于标记错误
  • format
    用于修复错误
"scripts": {
    "lint": "eslint \"**/*.{js,mjs}\" && prettier --check --loglevel warn \"**/*.{js,mjs,json}\" && stylelint \"**/*.scss\"",
    "format": "eslint \"**/*.{js,mjs}\" --fix && prettier --write --loglevel warn \"**/*.{js,mjs,json}\" && stylelint \"**/*.scss\" --fix",
}

0
投票

我也面临同样的问题

然后我得到了解决方案

使用此命令:-> npm run lint:js -- --fix

希望你的问题得到解决

© www.soinside.com 2019 - 2024. All rights reserved.