2017-02-21 18 views
2

Я не могу найти определенный набор функций, которые компилятор Babel не может скомпилировать. Я знаю, что есть babel-polyfill и core.js, но мне нужно знать точные имена функций es2015, которые компилятор babel не может скомпилировать.Каковы функции ES6, которые Babel не может скомпилировать для ES5 при построении?

Любая помощь будет оценена по достоинству.

Благодаря

ответ

3

Существует удивительный сайт, который дает вам всю информацию, вы хотите на совместимость transpiler, браузер и даже мобильный поддержку.

У вас есть look at this.

Вторая колонка для Вавилона. Категории находятся слева. Если вы нажмете маленький символ правой стрелки, вы даже увидите тесты, которые обеспечивают соответствие - я думаю, что это потрясающая функция!

Последняя версия Babel улучшила их количество. Это было чуть более 50% до последнего. Сейчас они составляют 71% (21 февраля 2017 года).

Вы даже можете переключиться, чтобы увидеть, какая поддержка ES5 по-прежнему отсутствует или заглянуть в будущее с передовыми изменениями (2016+).


В терминах core.js polyfills, this link обеспечивает индекс на функцию поддержки, оказываемой. Это происходит с точки зрения возможностей, и если вы перейдете к одному из них, вы попадете в список модулей, которые предоставляют новые возможности. Каждый из этих модулей может быть упакован отдельно, поэтому вы можете выбрать и выбрать то, что хотите, если размер скрипта вызывает беспокойство. См. this link для получения более подробной информации об использовании только выбранных модулей.

+0

хороший, но я не знаю, как проверить, скомпилирована ли функция для es5 или core.js, как полипол на время выполнения. Я хочу знать функции, для которых требуется многопользовательский (то есть функции, которые невозможно скомпилировать). Возможно, я пропустил что-то из вашего ответа, но, пожалуйста, направляйте меня. –

+0

Babel - это просто синтаксический преобразователь, поэтому вам потребуется core.js во время выполнения. Существует npm модуль babel-polyfill, который вы можете включить в свои проекты, чтобы получить поддержку 71%, указанную в его ссылке. Проверьте [это для дальнейшей информации] (http://babeljs.io/docs/usage/polyfill/). – rasmeister

+0

Проблема заключается в том, что размер файла babel-polyfill составляет около 85 КБ после минимизации. И мне не нужны все функции, кроме Promises, const, функция стрелки, let, class и constructor. Вот почему я хотел знать, какие функции не могут быть скомпилированы компилятором babel, поскольку я не хочу включать файл 85 КБ, когда мое приложение запускается. –