【BugFix】引用插件时提示 A `require()` style import is forbidden.

256 阅读1分钟

问题描述

在引入postCSS插件时,配置postcss.config.cjs,使用了require()方法,eslint 报错: "A require() style import is forbidden."

/* eslint-env node */
module.exports = {
  plugins: [
    require('postcss-each'),
  ]
}

原因分析:

由于 ESModulesCommonJS 的模块化标准不同,故CommonJS 中的 require() 方法不能在非 Node.js 环境下运行

(首行加了 /* eslint-env node */ 注释,不知道为什么没有被识别为 Node 环境...)


解决方案:

最后,迫不得已,在 eslint.config.ts 中加了规则:

{
  rules: {
    '@typescript-eslint/no-require-imports': 'off',
  },
},

重启项目,Bug Fixed~


文章参考: 解析后缀.js、.mjs和.cjs:JavaScript文件类型的区别与使用