require is not defined in es module scope, you can use import instead

Es kommt eine Fehlermeldung auf: ‘require nicht definiert im ES-Modul-Bereich’

Wenn Sie jemals mit diesem Fehler konfrontiert werden, sind Sie nicht alleine. Dieses Phänomen tritt auf, weil “require” nicht im ECMAScript-Modulenscope definiert ist. Erkennen Sie das, Leute? Lasst es uns genauer betrachten!

Der “require” funktioniert nicht in ES Modules, was nun?

Bevor wir in das “Wie” und “Warum” einsteigen, lassen Sie uns zuerst diese Frage beantworten: “Was ist dieser mysteriöse ‘require’, von dem Sie sprechen?”

Einfach gesagt, ist ‘require’ eine Funktion in Node.js, die zum Laden von Modulen verwendet wird. Aber was ist, wenn Sie diesen in ES-Modul-Scope verwenden wollen? Nun, hier kommt “import” ins Spiel.

“import” ist die neue “require” in ES-Modul-Scope

Stellen Sie sich “import” als die modernere, schlankere und und ein bisschen mehr erweiterte Version von “require” vor. Es bietet eine dynamischere Möglichkeit, Module zu importieren und zu verwenden. So einfach ist das.

Aber wie sieht die Verwendung von “import” aus?

Zum Glück ist es ziemlich einfach. Werfen Sie einen Blick auf diese Tabelle:

Erklärung

Require Syntax

Import Syntax

Module Laden let express = require(‘express’); import express from ‘express’;
Bestimmte Funktionen Laden let { Router } = require(‘express’); import { Router } from ‘express’;
Alle Exporte Laden let libs = require(‘express’); import * as libs from ‘express’;
Default Export Laden let express = require(‘express’).default; import express from ‘express’;

Anhand dieser Tabelle erkennt man, dass der “import” Befehl definitiv intuitiver und flexibler ist als “require”. Also, “require” ist nicht definiert im ES-Modul-Bereich? Keine Sorge, “import” hat Ihren Rücken! So einfach es ist!

0 Shares:
Leave a Reply

Your email address will not be published. Required fields are marked *

You May Also Like