«Если рабочий хочет хорошо выполнять свою работу, он должен сначала заточить свои инструменты» — Конфуций, «Аналитики Конфуция. Лу Лингун»
титульная страница > программирование > Как устранить ошибку «Неожиданный экспорт токенов» в модулях ES6?

Как устранить ошибку «Неожиданный экспорт токенов» в модулях ES6?

Опубликовано 6 ноября 2024 г.
Просматривать:899

How to Resolve \

Неожиданный экспорт токенов: использование поддержки модуля ES6

Обнаружение ошибки «Неожиданный экспорт токенов» при попытке запустить код ES6 может вызвать недоумение проблема. Эта ошибка возникает, когда среда выполнения не поддерживает используемый вами синтаксис модуля EcmaScript (ESM).

Понимание ESM:

ESM, часто называемый " ES6 Modules» представила систему модулей для JavaScript, обеспечивающую инкапсуляцию кода и упрощающую управление зависимостями. Он использует ключевое слово экспорта для определения модулей, что делает организацию кода более явной.

Поддержка ESM:

Версии NodeJS ниже v14.13.0 не поддерживали ESM и вместо этого использовали в модулях CommonJS, в которых использовался синтаксис свойства Module.exports. Однако более новые версии NodeJS (v14.13.0 и выше) поддерживают ESM при условии, что он явно включен.

Решения:

Включите ESM в NodeJS (v14) .13.0 ):

Отредактируйте файл package.json вашего проекта и установите для свойства "type" значение "module":

{
  ...
  "type": "module",
  ...
}

Рефакторинг с использованием синтаксиса модуля CommonJS:

Для более старых версий NodeJS выполните рефакторинг кода, чтобы использовать синтаксис модуля CommonJS:

// Example ES6 module
export class MyClass {
  constructor() {
    console.log("es6");
  }
}

// CommonJS module equivalent
module.exports = class MyClass {
  constructor() {
    console.log("commonJs");
  }
};

Используйте TypeScript и ts-node:

Рассмотрите возможность использования TypeScript вместе с пакетами npm ts-node или ts-node-dev. TypeScript транспилируется в JavaScript во время компиляции, что делает код ES6 совместимым со старыми версиями NodeJS.

Транспилируйте ESM в CommonJS:

Используйте esbuild (устанавливаемый через npm) для транспиляции вашего кода ES6 JavaScript в формат CommonJS, что позволяет запускать его в средах без встроенной поддержки ESM.

Заявление о выпуске Эта статья перепечатана по адресу: 1729172539. В случае каких-либо нарушений, пожалуйста, свяжитесь с [email protected], чтобы удалить ее.
Последний учебник Более>

Изучайте китайский

Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.

Copyright© 2022 湘ICP备2022001581号-3