FREE tools

require nicht definiert JavaScript: Ursachen, Lösungen und schnelle Fixes

Lukas Fuchs vor 1 Woche Frontend-Entwicklung 3 Min. Lesezeit

Wenn in JavaScript plötzlich „require is not defined“ auftaucht, steht mein Code still. In diesem Artikel zeige ich dir, warum das passiert, wie ich es schnell löse und wie du den Fehler sauber vermeidest.

require nicht definiert JavaScript: was der Fehler wirklich bedeutet

require nicht definiert JavaScript ist kein komplizierter Bug. Es ist fast immer ein Hinweis darauf, dass du CommonJS in einer Umgebung verwendest, die require() nicht kennt. Genau das passiert oft im Browser, in ES-Modules oder in falscher Node.js-Konfiguration.

Ich halte es einfach: require() ist nicht universell. Es funktioniert in Node.js mit CommonJS, aber nicht automatisch im Browser. Wenn du das verstehst, löst du den Fehler schnell und verhinderst ihn künftig komplett.

require nicht definiert JavaScript: die häufigsten Ursachen

Der Fehler hat fast immer eine dieser Ursachen:

  • Du nutzt require() im Browser, obwohl dort stattdessen import gebraucht wird.
  • Dein Script ist als ES-Module geladen und daher ist require() nicht verfügbar.
  • Deine Node.js-Datei wird falsch ausgeführt, zum Beispiel mit falscher Dateiendung oder falscher Package-Konfiguration.
  • Ein Tooling-Problem wie Webpack, Vite oder Babel erzeugt eine Umgebung, in der require() nicht existiert.

Wenn ich den Fehler sehe, prüfe ich zuerst die Umgebung. Nicht den Code. Das spart Zeit.

require nicht definiert JavaScript im Browser

Das ist der Klassiker. Im Browser gibt es von Haus aus kein require(). Wenn du also sowas schreibst:

const fs = require('fs');

dann wird das im Browser scheitern. fs ist außerdem ein Node.js-Modul und gehört nicht in den Browser.

Wenn du im Frontend arbeitest, nutze stattdessen ES-Module:

import something from './module.js';

Und wenn du externe Bibliotheken im Browser laden willst, nutze eine moderne Build-Umgebung oder direkte Script-Tags mit kompatiblen Bundles.

require nicht definiert JavaScript in ES-Modules

Ein weiterer häufiger Grund: Du hast dein Script als Modul deklariert, zum Beispiel so:

<script type="module" src="app.js"></script>

In diesem Fall ist require() nicht verfügbar. Module verwenden import und export. Das ist kein Fehler, sondern das neue Standardmodell von JavaScript.

Wenn ich mit Modulen arbeite, denke ich so:

  • CommonJS = require(), module.exports
  • ESM = import, export

Beides mischen geht manchmal, aber nicht blind. Wenn du nicht genau weißt, was dein Projekt nutzt, bekommst du schnell Fehler wie require nicht definiert JavaScript.

require nicht definiert JavaScript in Node.js beheben

In Node.js sollte require() normalerweise funktionieren. Wenn es trotzdem nicht geht, prüfe diese Punkte:

  • Datei-Endung: Nutzt dein Projekt .mjs oder type: "module" in der package.json?
  • Modulsystem: Verwendest du ESM, aber schreibst CommonJS-Code?
  • Ausführung: Startest du wirklich mit Node.js und nicht über den Browser?
  • Package-Konfiguration: Ist in package.json alles konsistent?

Wenn du in Node.js auf ESM umgestellt hast, ersetze require() durch import:

import express from 'express';

Wenn du bei CommonJS bleiben willst, dann halte das Projekt konsistent und nutze:

const express = require('express');

require nicht definiert JavaScript schnell fixen

So gehe ich bei der Fehlersuche vor, ohne Zeit zu verbrennen:

  1. Ich prüfe die Umgebung: Browser oder Node.js?
  2. Ich prüfe das Modulsystem: CommonJS oder ESM?
  3. Ich suche nach falschen Imports: Nutzt der Code require() in einem Modul?
  4. Ich trenne Frontend und Backend sauber: Browsercode bleibt browserfähig, Node-Code bleibt serverseitig.
  5. Ich teste die kleinste funktionierende Version: Erst der einfache Import, dann der Rest.

Mein Prinzip: Wenn eine Lösung kompliziert wirkt, ist oft die Umgebung falsch, nicht der Code selbst.

require nicht definiert JavaScript: typische Beispiele

Hier sind die Fälle, die ich ständig sehe:

Beispiel 1: Browser-Code mit require()

<script>
const axios = require('axios');
</script>

Das geht im Browser nicht. Nutze stattdessen ein Modul-Bundle oder einen Browser-kompatiblen Import.

Beispiel 2: ES-Module mit require()

import path from 'path';
const fs = require('fs');

Das ist ein Mischsystem. Entscheide dich für ESM oder CommonJS.

Beispiel 3: Falsche Erwartung bei Node und Browser

const crypto = require('crypto');

In Node.js okay. Im Browser nicht direkt nutzbar. Wenn du das im Frontend brauchst, brauchst du eine andere Lösung.

require nicht definiert JavaScript: die beste langfristige Lösung

Ich empfehle heute meistens ES-Module, wenn das Projekt neu ist. Warum? Weil sie Standard sind, sauber funktionieren und besser mit modernem Tooling harmonieren.

Wenn du ein altes Projekt pflegst, kann CommonJS weiter okay sein. Aber dann solltest du das Projekt nicht halb auf ESM und halb auf CommonJS umbauen. Genau da entstehen die meisten Fehler.

Meine einfache Regel:

  • Neues Frontend-Projekt: ESM
  • Modernes Node.js-Projekt: ESM, wenn möglich
  • Legacy-Code: CommonJS nur dann, wenn du es bewusst so lässt

Hilfreiche Ressourcen zu require nicht definiert JavaScript

Wenn du tiefer einsteigen willst, sind diese offiziellen Ressourcen sinnvoll:

Fazit zu require nicht definiert JavaScript

Der Fehler require nicht definiert JavaScript ist meistens kein Rätsel. Er sagt dir nur: Du verwendest das falsche Modulsystem in der falschen Umgebung. Wenn du Browser und Node.js sauber trennst, zwischen ESM und CommonJS unterscheidest und deine Konfiguration prüfst, ist das Problem in Minuten gelöst. Genau so gehe ich immer vor bei require nicht definiert JavaScript.

Weitere Beiträge

Folge uns

Neue Beiträge

Webdesign & UX

Excel Zellen sperren und Blattschutz entfernen: So schützt du Tabellen richtig

AUTOR • Aug 15, 2026
Backend-Entwicklung

Color Index VBA: Farben in Excel per Code steuern, ohne Chaos

AUTOR • Aug 15, 2026
Backend-Entwicklung

Debugmodus: Was er ist, wie du ihn aktivierst und Fehler schneller findest

AUTOR • Aug 15, 2026
Performance & SEO

Excel Teilsumme: So berechnest du Teilbeträge schnell, sauber und ohne Chaos

AUTOR • Aug 15, 2026
Backend-Entwicklung

MBR wiederherstellen: So reparierst du den Master Boot Record schnell und sicher

AUTOR • Aug 15, 2026
Webdesign & UX

Email HTML: So baust du bessere Mails, die wirklich gelesen werden

AUTOR • Aug 14, 2026
Backend-Entwicklung

Apex Server: Was dahintersteckt, wie du ihn sinnvoll nutzt und worauf du achten musst

AUTOR • Aug 14, 2026
Datenbanken & ORM

Dynamischer Speicher: Was er ist, wie er funktioniert und wann er Sinn macht

AUTOR • Aug 14, 2026
Datenbanken & ORM

MySQL JOIN UPDATE richtig nutzen: So aktualisierst du Tabellen per JOIN ohne Chaos

AUTOR • Aug 14, 2026
Datenbanken & ORM

Effizientes Update in MongoDB: Mit dem Befehl `updateMany` zum Ziel

AUTOR • Aug 14, 2026
DevOps & Deployment

PowerShell Ausgabe schreiben: So speicherst du Output sauber in Datei, Variable und Log

AUTOR • Aug 14, 2026
DevOps & Deployment

GPO Server: Gruppenrichtlinien-Server richtig verstehen, einrichten und nutzen

AUTOR • Aug 14, 2026
DevOps & Deployment

Windows Update Ikon: Bedeutung, Funktion und was du tun kannst, wenn es nervt

AUTOR • Aug 14, 2026
Performance & SEO

Latch Up verstehen: Ursachen, Symptome und wie du es schnell in den Griff bekommst

AUTOR • Aug 14, 2026
Full-Stack

Soncost: Was es ist, warum es dein Denken über Kosten verändert und wie du es vermeidest

AUTOR • Aug 14, 2026
Frontend-Entwicklung

Span Tag Rätsel lösen: So findest du die richtige Struktur im HTML

AUTOR • Aug 14, 2026
Webdesign & UX

Mac Shortcut Desktop anzeigen: So blendest du deinen Schreibtisch sofort ein

AUTOR • Aug 14, 2026
Webdesign & UX

WASD Joystick: Was er kann, wann er sinnvoll ist und worauf du achten musst

AUTOR • Aug 13, 2026
Backend-Entwicklung

Visual Basic Code lernen: Aufbau, Beispiele und typische Fehler

AUTOR • Aug 13, 2026
Webdesign & UX

PNG vektorisieren: So machst du aus Pixelgrafiken saubere Vektoren

AUTOR • Aug 13, 2026

Beliebte Beiträge

Webdesign & UX

Die Kunst der perfekten Textseite: Tipps für ansprechende Inhalte

AUTOR • Jul 31, 2025
Backend-Entwicklung

Sys 3: Ein umfassender Leitfaden zur Systemdiagnose und -optimierung

AUTOR • Jul 27, 2025
Webdesign & UX

Die Geheimnisse des Advanced Table Cut 52: Alles was Sie wissen müssen

AUTOR • Jul 16, 2025
DevOps & Deployment

Die ultimative Anleitung zur Einrichtung einer HTTPS-Verbindung

AUTOR • Jul 15, 2025
Datenbanken & ORM

Clearout: Die Nummer Eins für die Datenbereinigung und E-Mail-Rettung

AUTOR • Jul 10, 2025
Backend-Entwicklung

Objektcode: Was Du Wissen Musst für Deinen Einstieg in die Programmierung

AUTOR • Jun 26, 2025
DevOps & Deployment

Der ultimative Leitfaden für ein UEFI Update: Alles, was Sie wissen müssen

AUTOR • Jun 21, 2025
Backend-Entwicklung

LINQ: Die Kraft der Datenabfrage in .NET entdecken

AUTOR • Jun 20, 2025
DevOps & Deployment

Die richtigen Firewall-Ports für WSUS: So konfigurieren Sie Ihre Sicherheitsrichtlinien

AUTOR • Apr 15, 2026
Datenbanken & ORM

Picr: Die innovative Plattform zur Bildweiterverarbeitung

AUTOR • Jul 10, 2025
Webdesign & UX

So viele GB braucht Forza Horizon 5: Ein vollständiger Leitfaden

AUTOR • Jul 07, 2025
Frontend-Entwicklung

StartApp für Android: So Umsatz steigern und App monetarisieren

AUTOR • Jul 04, 2025
Full-Stack

Scatterplots in R: Grafikvisualisierung für Datenanalyse leicht gemacht

AUTOR • Jul 03, 2025
Performance & SEO

Die besten kostenlosen Audio CD MP3 Converter: Musik in Höchstform

AUTOR • Jul 03, 2025
APIs & Microservices

Alles was du über NAT IP wissen musst: Vorteile, Funktionen und Einsatzmöglichkeiten

AUTOR • Jul 02, 2025
APIs & Microservices

Seitenkanal Angriff: Alles, was Sie wissen müssen um Systeme zu schützen

AUTOR • Jul 01, 2025
Webdesign & UX

Ultimative Liste der Mac Tastenkombinationen: PDF Deutsch 2024

AUTOR • Jun 29, 2025
Webdesign & UX

So vergrößern Sie Bilder in Photoshop ohne Qualitätsverlust – Eine Schritt-für-Schritt-Anleitung

AUTOR • Jun 29, 2025
Webdesign & UX

Excel Arbeitsmappen vergleichen: Tipps und Tools für einen effizienten Vergleich

AUTOR • Jun 27, 2025
Performance & SEO

Die Bedeutung von Filetype für die Suchmaschinenoptimierung

AUTOR • Jun 27, 2025