Как исправить Node JS “Ошибка синтаксиса: Неожиданный маркер импорта” при использовании модулей JavaScript

Для того, чтобы узел для экспорта модулей, которые вы должны назначить каждую функцию, объект или переменную, который требует, чтобы экспортировать, в качестве свойства объекта modules.exports.

 

Экспорт

В этом примере файл модуля robot.js. Каждая функция, объект или переменная, которую мы хотели бы сделать доступными для других файлов мы делаем их свойства объекта экспорта.

robot.js (файл модуля)

exports.sayHello =

(тзд) => console.log(«Привет, ребята!!')


exports.hello = "Здравствуйте!"


exports.greetings =

  { английский : "Здравствуйте!",

    Французский : "привет!",

    испанский: "Ола!"

  }

 

Импорт

Узел не поддерживает оператор импорта, Поэтому старый требует функция должна использоваться при импорте.

Здесь мы импортируем robot.js (заметка: .JS необязательно могут быть опущены в функции требуют) и назначить его на объект, который мы можем назвать что-нибудь. Мы называем это робот. Наш объект робот теперь держит наши экспортируемые модули из robot.js

Мы можем использовать его следующим образом…

app.js (главный файл)

константные робот = требуется('./робот')


robot.sayHello()

console.log(robot.hello)

console.log(robot.greetings.french)

Не забудьте использовать имя объекта, который вы выбрали на первую линию при использовании переменного модуля, Функция или объект.

Примечание: Браузеры не поддерживают требуется заявление. Поэтому вы не можете использовать функцию импорта требуется модуль с браузерами без использования transpiler, таких как Вавилонская или Bundler, такие как Browserify.

Uncaught ReferenceError - требуют не определено в Opera Web-браузер V51
Требуют функция импорта модуля в JavaScript не поддерживается в веб-браузерах