首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >为什么使用我的配置在未暂存的文件上运行lint-staged?

为什么使用我的配置在未暂存的文件上运行lint-staged?
EN

Stack Overflow用户
提问于 2020-05-19 03:19:05
回答 1查看 379关注 0票数 1

我在package.json文件中设置了husky和lint-staged,它可以在所有文件上运行,而我希望它只在staged文件上运行。

代码语言:javascript
复制
"husky": {
  "hooks": {
    "pre-commit": "lint-staged"
  }
},
"lint-staged": {
  "./**/*.js": [
    "eslint . --fix --quiet"
  ]
},
EN

回答 1

Stack Overflow用户

发布于 2021-05-01 20:04:03

删除".“在eslint命令中应该可以解决这个问题。

代码语言:javascript
复制
"husky": {
  "hooks": {
    "pre-commit": "lint-staged"
  }
},
"lint-staged": {
  "./**/*.js": [
    "eslint --fix --quiet"
  ]
},

命令eslint . --fix --quiet会对当前目录中的所有文件运行eslint。

因此,当为暂存文件触发pre-commit钩子时,由于eslint命令在当前目录中的所有文件上运行,因此它也会影响未暂存文件。

每当对文件运行lint-staged时,它都会自动将该文件的名称传递给所有指定的命令。

例如,如果正在处理暂存的index.js文件,

代码语言:javascript
复制
eslint --fix --quiet

被转换为

代码语言:javascript
复制
eslint --fix --quiet index.js
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/61877356

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档