summaryrefslogtreecommitdiff
path: root/lib/internal/modules/esm/translators.js
diff options
context:
space:
mode:
Diffstat (limited to 'lib/internal/modules/esm/translators.js')
-rw-r--r--lib/internal/modules/esm/translators.js8
1 files changed, 5 insertions, 3 deletions
diff --git a/lib/internal/modules/esm/translators.js b/lib/internal/modules/esm/translators.js
index 18ccfb35e8..34a9a140dd 100644
--- a/lib/internal/modules/esm/translators.js
+++ b/lib/internal/modules/esm/translators.js
@@ -23,7 +23,6 @@ const fs = require('fs');
const { fileURLToPath, URL } = require('url');
const { debuglog } = require('internal/util/debuglog');
const { promisify } = require('internal/util');
-const esmLoader = require('internal/process/esm_loader');
const {
ERR_INVALID_URL,
ERR_INVALID_URL_SCHEME,
@@ -69,9 +68,12 @@ function initializeImportMeta(meta, { url }) {
meta.url = url;
}
+let esmLoader;
async function importModuleDynamically(specifier, { url }) {
- const loader = await esmLoader.loaderPromise;
- return loader.import(specifier, url);
+ if (!esmLoader) {
+ esmLoader = require('internal/process/esm_loader');
+ }
+ return esmLoader.ESMLoader.import(specifier, url);
}
// Strategy for loading a standard JavaScript module