Почему Babel не использует класс javascript при переносе на ES2015? - PullRequest
0 голосов
/ 27 августа 2018

Я недавно пробовал онлайновый инструмент для транспонирования Babel и заметил, что при переносе класса в ES2015 он не использует класс javascript и вместо него создает var _createClass = function () {... шаблон: Demo

Тем не менее, ключевое слово класса javascript было добавлено в ES2015. Источник

Класс javascript используется только при отметке ES2016.

Почему это?

Ответы [ 2 ]

0 голосов
/ 27 августа 2018

Я заметил, что при переносе класса в ES2015 он не использует класс javascript: https://babeljs.io/repl#?presets=es2015&…

Вы не переносили на ES2015, вы переносили с ES2015 на старую версию. Предустановка ES2015 выбирает все преобразования, которые генерируют код ES3 / 5 для материала ES2015.

Класс javascript используется только при отметке ES2016.

Да, он сохраняет синтаксис class и другие функции ES2015, когда вы переносите только материал ES2016 (или выше).

0 голосов
/ 27 августа 2018

Тем не менее, ключевое слово класса javascript было добавлено в ES2015

Да, ключевое слово было определено на ES2015, и class до этого уже было зарезервированным словом, но фактическая реализация - это другая история. Как упоминает @AshKander в своих комментариях, смысл использования babel с определенной целью - заставить этот код работать во всех браузерах, поддерживающих такую ​​цель.

Список зарезервированных ключевых слов (настоящее и будущее)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...