You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用pre-commit时Prettier无法识别插件的问题求助

问题:pre-commit环境下Prettier无法识别插件

问题背景

我使用Prettier搭配pre-commit在代码提交前做格式化,但遇到了Prettier无法定位插件的问题,怀疑是Prettier不识别NODE_PATH环境变量导致的。

初始配置

- id: prettier
  name: prettier
  entry: prettier
  language: node
  args: ['--write', '--ignore-unknown']
  additional_dependencies:
    - prettier@3.3.2
    - prettier-plugin-gherkin@2.3.0
    - prettier-plugin-organize-imports

错误信息

prettier.................................................................Failed
- hook id: prettier
- duration: 0.15s
- exit code: 1

[error] Cannot find package 'prettier-plugin-organize-imports' imported from /home/my-user/repositories/github.com/my-repo/my-project/noop.js

临时解决办法

我通过在entry命令中直接指定插件完整路径的方式解决了问题,但不确定这是否为最佳实践。修改后的.pre-commit-config.yaml配置如下:

- id: prettier
  name: prettier
  entry: bash -c 'prettier --plugin $NODE_PATH/prettier-plugin-organize-imports/index.js --plugin $NODE_PATH/prettier-plugin-gherkin/dist/index.js "$@"' _
  verbose: true
  language: node
  pass_filenames: true
  args: ['--write', '--ignore-unknown']
  additional_dependencies:
    - prettier@3.3.2
    - prettier-plugin-gherkin@2.3.0
    - prettier-plugin-organize-imports

求助

有没有人遇到过类似问题?或者有没有更优雅的方案能确保pre-commit环境下Prettier正常识别插件?

内容的提问来源于stack exchange,提问作者Lajos

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.21 08:17:12