【开发问题记录】执行 git cz 报require() of ES Module…… 错误

发布于:2025-02-11 ⋅ 阅读:(37) ⋅ 点赞:(0)

1、问题

在对 commitizen 进行完,一系列的初始化以后 , 对代码进行 提交 到暂存区,然后要提交到 本地仓库 的报错

在这里插入图片描述

然后因为安装了 commitizen 所以是想用 git cz 进行提交的, 执行命令的时候确报错了

require() of ES Module F:\个人项目\dida_client_pc\.cz-config.js from F:\个人项目\dida_client_pc\node_modules\.pnpm\find-config@1.0.0\node_modules\find-config\src\find-config.js not supported..cz-config.js is treated as an ES module file as it is a .js file whose nearest parent package.json contains "type": "module" which declares all .js files in that package scope as ES modules.Instead either rename .cz-config.js to end in .cjs, change the requiring code to use dynamic import() which is available in all CommonJS modules, or change "type": "module" to "type": "commonjs" in F:\个人项目\dida_client_pc\package.json to treat all .js files as CommonJS (using .mjs for all ES modules instead).

在这里插入图片描述

2、解决

其实看这个报错的大概意思,也能猜到,是 module 和 commonjs 相互转化的问题

在这里插入图片描述

这个项目是 vue3 项目,vue3默认都是 module 的, 所以还得从这个 插件 下手,进行解决 ,然后在 GitHub上找到了这个

在这里插入图片描述

解决方案
1、把 .cz-config.js 重命名 为 .cz-config.cjs
2、修改 package.json 文件 ,增加这个 cz-customizable 的配置

  "config": {
    "cz-customizable": {
      "config": ".cz-config.cjs"
    }
  }

3、参考链接


网站公告

今日签到

点亮在社区的每一天
去签到