Генераторы TypeScript 3.6 становятся строже


TypeScript был обновлен за счет более строгих генераторов, улучшений UX вокруг Promises и улучшенной игровой площадки TypeScript. TypeScript — это надмножество JavaScript, которое добавляет дополнительные статические типы, которые могут быть проверены компилятором TypeScript для выявления распространенных ошибок в ваших программах.

Такие инструменты, как компилятор TypeScript и Babel, затем используются для преобразования TypeScript в соответствующий стандартам код ECMAScript, который будет работать в любом браузере или во время выполнения. TypeScript включает поддержку редактора для Visual Studio 2015 и 2017, Sublime Text 3 и Visual Studio Code.

Первым изменением в новой версии является введение более строгой проверки итераторов и функций генератора. До сих пор, если вы использовали генератор, не было возможности отличить, было ли значение получено или возвращено генератором. В объявления типов Interator и IteratorResult были внесены изменения, чтобы включить новые параметры типа, а также новый тип, который TypeScript использует для представления генераторов, названный типом Generator. Это означает, что вы сможете соответствующим образом сузить значения из итераторов, работая с ними напрямую.

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

Распределение массивов — еще одна область, которую необходимо улучшить. До сих пор TypeScript использовал упрощенное излучение по умолчанию для таких конструкций, как циклы for / of и спреды массивов, потому что, когда они используются для целей до ES2015, стандартное излучение оказывается слишком тяжелым. Если вы хотели повторить итерацию для других типов, вам нужно было обозначить это с помощью флага и выдать гораздо больший код. Это вызывало проблемы, поэтому в новом выпуске представлен новый помощник по распределенным массивам для точного моделирования того, что происходит в ES2015 при использовании в старых целях.

Игровая площадка TypeScript — еще одна область, которую нужно улучшить с помощью новых возможностей, включая:

Целевой параметр (позволяющий пользователям переключаться с es5 на es3, es2015, esnext и т. Д.)

Все флаги строгости (в том числе только строгие)

Поддержка простых файлов JavaScript (с использованием allowJS и, возможно, checkJs)

Параметры также сохраняются при обмене ссылками на образцы игровых площадок. Разработчики заявляют, что в ближайшем будущем они обновят образцы игровых площадок, добавят поддержку JSX и доработают автоматическое получение типа, что означает, что вы сможете увидеть тот же опыт на детской площадке, как в личном редакторе.


Добавить комментарий