Hacktoberfest 2026: los issues que los mantenedores marcaron para octubre, abiertos y aptos para principiantes. Explorar issues de Hacktoberfest

ReferenceError: exports is not defined in ES module scope

Abierto
#773 6 comentarios 0 reacciones 0 asignados Ver en GitHub

Nadie ha tomado este issue todavía.

Evaluación

Dificultad
4/5
Tiempo estimado
3-5 días
Aptitud para principiantes
45/100
Tipo de issue
Error
Claridad
Bastante claro
Estado de actividad
Tranquilo
Stack tecnológico
bun, node.js, typescript, vite, vscode

Línea de trabajo

Reproduce el fallo en un workspace de Bun usando el vitest.config.ts, package.json y la configuración de tsconfig proporcionados. Empieza con el .vite-temp/vitest.config.js generado y la ruta de Vite loadConfigFromBundledFile mostrada en el stack trace; se considera terminado cuando la extensión de VS Code carga los tests sin el ES module ReferenceError.

Escrito por el modelo de indexación a partir del texto del issue.

Descripción

pending triage
Describe the bug

Vitest vscode extension gives this error when it loads the tests in a workspace. I have set up all my package types to module, so it should not error about this.
‍‍‍‍‍‍‍‍‍ReferenceError: exports is not defined in ES module scope

Expected behavior

It should not error for exports usage. I am not using commonjs

Reproduction

Open Vitest in a bun workspace and add configurations via vitest.config.ts for one of the packages.

import solid from "vite-plugin-solid";
import { defineConfig } from "vitest/config";

export default defineConfig({
	plugins: [solid()],
	resolve: {
		conditions: ["development", "browser"],
	},
	test: {
		environment: "happy-dom",
		globals: true,
		include: ["src/**/__tests__/**/*.test.{ts,tsx}"],
	},
});

My vite version is 7.3.1

Here's package.json:

{
	"name": "test-workspace",
	"private": true,
	"main": "src/index.ts",
	"type": "module",
	"dependencies": {
		"solid-js": "^1.9.11"
	},
	"devDependencies": {
		"@solidjs/testing-library": "^0.8.10",
		"@testing-library/user-event": "^14.6.1",
		"@testing-library/dom": "^10.4.1",
		"@testing-library/jest-dom": "^6.9.1",
		"happy-dom": "^20.7.0",
		"vite": "^7.3.1",
		"vite-plugin-solid": "^2.11.10",
		"vitest": "^4.0.18"
	}
}

and tsconfig (merged from extends for easier understanding

{
	"extends": "./node_modules/@tsconfig/bases/strictest.tsconfig.json",
	"compilerOptions": {
		"strictBuiltinIteratorReturn": false,
		"strictPropertyInitialization": false,
		"forceConsistentCasingInFileNames": true,
		"target": "es2022",
		"module": "esnext",
		"moduleResolution": "bundler",
		"lib": ["es2022"],
		"noEmit": true,
		"preserveWatchOutput": true,
		"allowImportingTsExtensions": true,
		"esModuleInterop": true,
		"preserveSymlinks": true,
		"declaration": true,
		"sourceMap": true,
		"incremental": true,
		"allowJs": true,
		"esModuleInterop": true,
		"jsx": "preserve",
		"jsxImportSource": "solid-js",
		"lib": ["ES2022", "DOM", "DOM.Iterable"],
		"types": ["vite/client"],
		"moduleResolution": "bundler",
		"skipLibCheck": true,
		"sourceMap": true,
		"strict": true
	},
	"exclude": ["node_modules", "dist"]
}

Output
Error: Vitest failed to start: 
ReferenceError: exports is not defined in ES module scope
    at file:///Users/amin/work/test/packages/auth/node_modules/.vite-temp/vitest.config.js.timestamp-1775796412003-477f52e87ef0f.mjs:9:23
    at ModuleJob.run (node:internal/modules/esm/module_job:345:25)
    at async onImport.tracePromise.__proto__ (node:internal/modules/esm/loader:665:26)
    at async loadConfigFromBundledFile (file:///Users/amin/work/test/node_modules/.bun/[email protected]+31d0b22d5eb96c53/node_modules/vite/dist/node/chunks/config.js:35909:12)
    at async bundleAndLoadConfigFile (file:///Users/amin/work/test/node_modules/.bun/[email protected]+31d0b22d5eb96c53/node_modules/vite/dist/node/chunks/config.js:35797:17)
    at async loadConfigFromFile (file:///Users/amin/work/test/node_modules/.bun/[email protected]+31d0b22d5eb96c53/node_modules/vite/dist/node/chunks/config.js:35764:42)
    at async resolveConfig (file:///Users/amin/work/test/node_modules/.bun/[email protected]+31d0b22d5eb96c53/node_modules/vite/dist/node/chunks/config.js:35413:22)
    at async _createServer (file:///Users/amin/work/test/node_modules/.bun/[email protected]+31d0b22d5eb96c53/node_modules/vite/dist/node/chunks/config.js:25362:67)
    at async createViteServer (file:///Users/amin/work/test/node_modules/.bun/[email protected]+b66a349cc098673f/node_modules/vitest/dist/chunks/cli-api.Bxr1Nn49.js:8820:17)
    at async Module.createVitest (file:///Users/amin/work/test/node_modules/.bun/[email protected]+b66a349cc098673f/node_modules/vitest/dist/chunks/cli-api.Bxr1Nn49.js:14161:18)
	at e.u (/Users/amin/.vscode/extensions/vitest.explorer-1.50.1/dist/extension.js:1:58873)
	at e.emit (node:events:519:28)
	at e.o.t.exports.ae (/Users/amin/.vscode/extensions/vitest.explorer-1.50.1/dist/wrapper-Br94zcvg.js:1:38577)
	at e.o.t.exports.emit (node:events:519:28)
	at e.o.t.exports.dataMessage (/Users/amin/.vscode/extensions/vitest.explorer-1.50.1/dist/wrapper-Br94zcvg.js:1:16501)
	at e.o.t.exports.getData (/Users/amin/.vscode/extensions/vitest.explorer-1.50.1/dist/wrapper-Br94zcvg.js:1:15398)
	at e.o.t.exports.startLoop (/Users/amin/.vscode/extensions/vitest.explorer-1.50.1/dist/wrapper-Br94zcvg.js:1:12110)
	at e.o.t.exports._write (/Users/amin/.vscode/extensions/vitest.explorer-1.50.1/dist/wrapper-Br94zcvg.js:1:11402)
	at writeOrBuffer (node:internal/streams/writable:572:12)
	at _write (node:internal/streams/writable:501:10)
	at Writable.write (node:internal/streams/writable:510:10)
	at Socket.Z (/Users/amin/.vscode/extensions/vitest.explorer-1.50.1/dist/wrapper-Br94zcvg.js:1:39601)
	at Socket.emit (node:events:519:28)
	at addChunk (node:internal/streams/readable:561:12)
	at readableAddChunkPushByteMode (node:internal/streams/readable:512:3)
	at Readable.push (node:internal/streams/readable:392:5)
	at TCP.onStreamRead (node:internal/stream_base_commons:189:23)
	at TCP.callbackTrampoline (node:internal/async_hooks:130:17)
Extension Version

1.50.1

Vitest Version

4.1.2

Validations
Lenguaje dominante
TypeScript
Estrellas
931
Forks
124
Merge medio
18 h 28 min
PR fusionados (30 d)
4

Preparar el entorno

Este proyecto no incluye contenedor de desarrollo, Dockerfile ni guía de contribución, así que la configuración corre por tu cuenta: empieza por su README y consulta nuestra guía para la primera contribución para los pasos generales.

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Más de vitest-dev/vscode

Todos los issues de vitest-dev/vscode

Issues similares

Más issues de TypeScript

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.