jiangjiu / blog-md

前端/健身 思考与笔记~
https://github.com/jiangjiu/blog-md/issues
86 stars 6 forks source link

使用lint-staged渐进式解决代码规范问题 #42

Open jiangjiu opened 6 years ago

jiangjiu commented 6 years ago

使用lint-staged渐进式解决代码规范问题

Do not go gentle into that good night.

星际穿越中这句台词反复出现过多次,我理解为不要顺从命运安排的死亡。

在开发中,我们都会遇到这样问题多多的项目,改动起来成本很大,很痛苦,但是继续下去会让人在绝望中丧失开发的热情。

所以请温柔的改进它。

lint-staged

Run linters against staged git files and don't let 💩 slip into your code base!

在提交代码之前运行代码规范的检查是很有意义的。这样可以确保进入远端代码库的都是符合规范、具备可读性的统一代码,但每次提交就对项目中所有的代码进行检查,这有可能是相当慢的,而且会重复检测没有改动的代码,也许你只想提交受到规约。

install

  1. npm i --save-dev lint-staged husky
  2. 安装适当的linters,通常我们都会用eslint然后配置好.eslintrc
  3. 更新package.json
{
    "scripts": {
        "precommit": "lint-staged"
    },
    "lint-staged": {
        "*.js": ["eslint --fix", "git add"]
    }
}

现在就可以对代码做些改动,然后git add && git commit了 动图戳我

总结

放下屠刀,立地成佛。