prettier在代码提交前自动格式化

开始 按照官方推荐按照包依赖

npm i --save-dev --save-exact prettier

配置prettier的文件

  1. .prettierignore
    build
    coverage
    
  2. .prettierrc
    {
      "semi": false,
      "singleQuote": true,
      "trailingComma": "none"
    }
    

配置husky

// 需要安装mrm
npx mrm lint-stage

安装之后会新增配置
在这里插入图片描述
在这里插入图片描述
这样就可以配置完成了。

意外出现

由于echo创建文件,会自动选择utf-16的编码格式,导致husky读取配置文件异常。
在这里插入图片描述
错误提示如下

> git -c user.useConfigOnly=true commit --quiet --allow-empty-message --file -
[STARTED] Preparing lint-staged...
[SUCCESS] Preparing lint-staged...
[STARTED] Running tasks for staged files...
[STARTED] package.json[2m — 1 file[22m
[STARTED] *.{js,css,md,ts,tsx}[2m — 1 file[22m
[STARTED] prettier --write
[FAILED] [91mprettier --write[39m [2m[FAILED][22m
[FAILED] [91mprettier --write[39m [2m[FAILED][22m
[SUCCESS] Running tasks for staged files...
[STARTED] Applying modifications from tasks...
[SKIPPED] Skipped because of errors from tasks.
[STARTED] Reverting to original state because of errors...
[SUCCESS] Reverting to original state because of errors...
[STARTED] Cleaning up temporary files...
[SUCCESS] Cleaning up temporary files...

[91m[91m×[91m prettier --write:[39m
[error] Invalid configuration file `src\test.js`: Cannot find module '��{

一直提示配置文件找不到,经过分析,错误提示有乱码,大概率是文件编码的问题,果然发现问题所在

echo命令行新建的文件的默认编码为utf-16 LE

导致husky读取配置文件解码异常。

自己手动切换为utf-8就正常了

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值