如何从npm脚本运行eslint --fix

M U*_*M U 5 javascript npm eslint npm-scripts

我正在尝试在我的package.json中添加lint-fix。我的基本皮棉是"lint": "eslint --ext .js,.vue src test/unit/specs test/e2e/specs"

我确实尝试过,"lint-fix": "eslint --fix --ext .js,.vue src test/unit/specs test/e2e/specs"但是它抛出了我的错误,但没有修复它们。

我必须改变什么?

NPM的错误是:

217 problems (217 errors, 0 warnings)
npm ERR! Windows_NT 10.0.14393
npm ERR! argv "C:\\Program Files\\nodejs\\node.exe" "C:\\Program Files\\nodejs\\node_modules\\npm\\bin\\npm-cli.js" "run-script" "lint-fix"
npm ERR! node v5.10.1
npm ERR! npm v3.8.3
npm ERR! code ELIFECYCLE
npm ERR! quasar-app@0.0.1 lint-fix: eslint --fix --ext .js,.vue src
npm ERR! Exit status 1
npm ERR! but it is caused by exit code 1 which is result of finding errors.
Run Code Online (Sandbox Code Playgroud)

小智 127

您可以运行以下命令:

npm run lint -- --fix
Run Code Online (Sandbox Code Playgroud)

  • @Arhacktector 程序使用“--”作为指示符来停止处理从该点开始的参数作为命令行选项是很常见的,例如“rm -- *”不会触发强制删除,即使有一个名为“的文件” -f`。因此,对于这个特定的命令行,“--”使 npm 命令不会将“--fix”解释为它应该解释的命令行选项,而是将其“原始”传递给运行子程序-命令。所以最终的结果和目标是 `--fix` 参数被传递给 lint 并且不被 npm 使用。 (7认同)
  • 您能解释一下这里的“--”是什么意思吗? (3认同)
  • 这对我来说可以修复可自动修复的 lint 错误。谢谢 :) (3认同)

小智 37

您可以在 package.json 中添加新命令。

"scripts": {
    "lint": "eslint --fix --ext .js,.jsx ."
}
Run Code Online (Sandbox Code Playgroud)

然后你可以在终端中运行它npm run lint


小智 25

尝试

./node_modules/.bin/eslint --fix .
Run Code Online (Sandbox Code Playgroud)


Rah*_*pta 19

要添加一个新的单独脚本来自动修复扩展名为.js和 的文件的 linting 问题.jsx,您可以添加添加脚本,package.json如下所示:

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

因此,添加上述命令后,您的脚本部分package.json可能如下所示:

...
....
"scripts": {
  "start": "react-scripts start",
  "build": "react-scripts build",
  "test": "react-scripts test",
  "eject": "react-scripts eject",
  "lint": "eslint .",
  "lint:fix": "eslint --fix --ext .js,.jsx ."
},
....
...
Run Code Online (Sandbox Code Playgroud)

要运行新添加的脚本以自动修复命令行上的 linting 问题,您应该运行如下命令:

npm run lint:fix


小智 19

eslint 自动更正命令。它为我解决了所有问题。

首先检查错误:

npx eslint .
Run Code Online (Sandbox Code Playgroud)

修复所有文件的问题(自动更正选项)

npx eslint --fix .
Run Code Online (Sandbox Code Playgroud)


Cod*_* YT 14

这就是我使用的:

npx eslint --fix . 
Run Code Online (Sandbox Code Playgroud)

它修复了所有文件。