[postcss] Cannot use 'import.meta' outside a module

发布时间:11/17/2025
更新时间:11/17/2025
展示:298

原因是我在Nuxt 中使用了 @nuxtjs/tailwindcss 插件,导致了这个错误。

一开始是以为我安装的姿势不对,反反复复都没用,在网上也找不到相关的解决方法。

具体错误信息如下:

Error {
  stack: "[postcss] Cannot use 'import.meta' outside a module\n" +
  'at createError (D:/PuYuanhao/project/vpn_client/node_modules/h3/dist/index.mjs:71:15)\n' +
  'at D:/PuYuanhao/project/vpn_client/node_modules/@nuxt/vite-builder/dist/index.mjs:423:21)\n' +
  'at async processMessage (D:/PuYuanhao/project/vpn_client/node_modules/@nuxt/vite-builder/dist/index.mjs:405:30)',
  message: "[postcss] Cannot use 'import.meta' outside a module",
  data: {
    code: 'VITE_ERROR',
    id: '/@fs/D:/PuYuanhao/project/vpn_client/node_modules/@nuxtjs/tailwindcss/node_modules/tailwindcss/tailwind.css',
    stack: 'D:\PuYuanhao\project\vpn_client\node_modules\@nuxtjs\tailwindcss\node_modules\@nuxt\kit\dist\index.mjs:2244\n' +
    '  if (!import.meta.dev) {\n' +
    '              ^^^^\n' +
    '\n' +
    "SyntaxError: Cannot use 'import.meta' outside a module\n" +
    '    at new Script (node:vm:117:7)\n' +
    '    at createScript (node:vm:269:10)\n' +
    '    at Object.runInThisContext (node:vm:317:10)\n' +
    '    at evalModule (D:\PuYuanhao\project\vpn_client\node_modules\tailwindcss\node_modules\jiti\dist\jiti.js:1:251724)\n' +
    '    at jiti (D:\PuYuanhao\project\vpn_client\node_modules\tailwindcss\node_modules\jiti\dist\jiti.js:1:249841)\n' +
    '    at D:\PuYuanhao\project\vpn_client\node_modules\@nuxtjs\tailwindcss\dist\config.cjs:7:13\n' +
    '    at evalModule (D:\PuYuanhao\project\vpn_client\node_modules\tailwindcss\node_modules\jiti\dist\jiti.js:1:251913)\n' +
    '    at jiti (D:\PuYuanhao\project\vpn_client\node_modules\tailwindcss\node_modules\jiti\dist\jiti.js:1:249841)\n' +
    '    at D:\PuYuanhao\project\vpn_client\node_modules\@nuxtjs\tailwindcss\dist\config-ctx.cjs:3:16\n' +
    '    at evalModule (D:\PuYu'... 90 more characters,
    message: "[postcss] Cannot use 'import.meta' outside a module",
  },
  statusCode: 500,
}

最后在 github 提问找到了解决方案:

Nodejs 版本需要 22 以上,我之前用的是 20 版本,导致了这个错误。升级到24后,问题解决了。