In diesem Artikel werden die Gründe für das Auftreten dieses Fehlers und die Möglichkeiten zur Behebung ausführlich erläutert.
Wie behebe ich den Fehler „Anforderung ist nicht definiert“ in JavaScript/Node.js?
Der Referenzfehler „require ist nicht gefunden“ tritt auf, wenn die Funktion require() in der JavaScript-Datei gefunden wird, die im Webbrowser und nicht in der Node.js-Umgebung ausgeführt werden sollte.
Was ist eine require()-Funktion?
Die Funktion require() hat einen globalen Gültigkeitsbereich und wird von Node.js bereitgestellt. Es lädt Module in der Node.js-Anwendung und führt sie aus. Viele Browser unterstützen Node.js nicht, sodass die Funktion require() in ihnen nicht verfügbar ist.
Wann tritt dieser Fehler auf?
Dieser Fehler tritt normalerweise auf, wenn JavaScript in beiden Browsern zusammen mit Node.js verwendet wird. Der Fehler kann auf drei Arten auftreten:
- Wenn die Funktion require() in der Browserumgebung verwendet wird.
- Wenn die Funktion require() in Node.js und der Datei package.json verwendet wird, wird der Typ auf „module“ gesetzt.
- Wenn die Funktion require() in Node.js verwendet wird, haben die Dateien die Erweiterung .mjs.
Mit der Syntax const „ myFile = require(‘./my-file’) ” in einer webbasierten Umgebung einen Fehler auslöst, der wie folgt aussieht:
Lassen Sie uns verschiedene Lösungen zur Behebung dieses Fehlers besprechen.
Fall 1: Fehler in der Browserumgebung
Die Funktion require() funktioniert speziell in Node.js. Die meisten Browser sind mit Node.js kompatibel und unterstützen daher nicht die Funktion require(). Das ES6-Modul-Import-Export-Modul behebt den Fehler „ReferenceError require ist nicht definiert“. Hier ist ein Beispiel für einen Code, der zeigt, wie es gemacht werden kann:
DOCTYPE html >< Körper >