Разница между параметром предварительной загрузки NodeJs (-r) и явным требованием в REPL

Я использую esm , очень полезный пакет для поддержки ключевых слов импорта ES. Согласно документу, в REPL он может использовать параметр командной строки preload для его инициализации. т.е. node -r esm

Или явно инициализировать в REPL:

      require = require("esm")(module/*, options*/)
module.exports = require("./main.js")

Основываясь на помощи NodeJs, необходимо предварительно загрузить модуль с помощью require. У меня вопрос, почему в REPL нельзя просто использовать: require("esm") для достижения той же функции, что и опция предварительной нагрузки -r; вместо этого мы должны переопределить значение по умолчанию required переменная в контексте, чтобы она работала.

Пытался разгадать волшебство, глядя на esmисходный код. Но мне это слишком сложно понять.

0 ответов

Другие вопросы по тегам