配置git pre-commit hook eslint不能自动格式化?

发布于 2022-09-12 04:44:31 字数 1591 浏览 15 评论 0

我使用link-staged配合husky实现git代码提交前执行eslint校验,直接手动执行校验命令可以自动格式化,自动执行格式命令则只报错eslint或者stylelint无法自动修复的部分,但是没有自动修复,stylelint和eslint都没有自动修复,哪位大佬帮忙看看这是什么原因?
以下是两种配置方式,都没有自动格式化。
方式一:

"scripts": {
    "test": "echo "Error: no test specified" && exit 1",
    "eslint:fix": "eslint --fix --ext ".js"",
    "eslint:lint": "eslint --ext ".js,.vue"",
    "stylelint:fix": "stylelint "**/*.css" "**/*.less" --fix"},
"husky": {
    "hooks": {
        "pre-commit": "lint-staged"
 }
},    
"lint-staged": {
    "*.{less,scss,css}":[
        "npm run stylelint:fix",
        "git add"
    ],
   "*.{js}": [
        "npm run eslint:fix",
        "git add"
    ]
}

方式二:

"scripts": {
    "test": "echo "Error: no test specified" && exit 1",
    "eslint:fix": "eslint --fix --ext ".js"",
    "eslint:lint": "eslint --ext ".js,.vue"",
    "stylelint:fix": "stylelint "**/*.css" "**/*.less" --fix"},
"husky": {
    "hooks": {
        "pre-commit": "lint-staged"
 }
},    
"lint-staged": {
    "**/*.{js,vue,html}": [
    "npx eslint --fix",
    "git add"
    ],
    "**/*.{vue,html,css,less,sass,scss}": [
        "npx stylelint --fix",
        "git add"
    ]
}

这是log截图
image.png

还有一个问题:
这个报错需要进行哪些修改?
`/Users/xxx/self/learn-prettier/.stylelintrc.js
0:0 warning File ignored by default. Use a negated ignore pattern (like "--ignore-pattern '!<relative/path/to/filename>'") to override`

✖ npx eslint --fix [FAILED] 这个显示Failed,是正确的吗?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

甜心小果奶 2022-09-19 04:44:31

自己已找到原因:
配置方案:
https://www.cnblogs.com/beileixinqing/p/13711721.html
原因为:通过监听pre-commit hook执行自动格式化命令的顺序为,先将非格式问题错误报出,按照指出的问题,全部解决之后,再次执行,最终提交的时候会自动格式化。

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文