Привет, Эмберисты!


На этой неделе: Полифилы для пакетов ember-data для старых версий Ember, узнайте как Figma в связке со Storybook облегчает жизнь разработчика, QUnit DOM объявляет о выпуске v1.0, а также выход ember-changeset 3.0.0 !


От переводчика: Все ссылки без пометки указывают на англоязычные ресурсы. На русском вопросы можно задать в нашем душевном телеграмм-канале


Назад в будущее с пакетами ember-data polyfill


API пакетов ember-data позволяет импортировать объекты и методы из небольших пакетов модуля ember-data, следуя рекомендациям, аналогичным тем, которые установлены в Ember Modules RFC # 176 (прим. пер.: RFC — Request for comment). Имея реальные и разрешимые пути к пакетам, многие разработчики могут получить выгоду благодаря улучшенной справочной информации о коде в своей IDE. API пакетов ember-data доступен начиная с версии 3.11.


Нет ничего лучше, чем новый блестящий API, который облегчит жизнь вашему разработчику. Еще лучше, если вы уже можете использовать этот API в своем приложении без какого-либо обновления! Пользователи ember-data версии 3.10 и ниже получают возможность воспользоваться новым способом импорта с помощью полифилла пакетов ember-data!


Полифил (Polyfill) обеспечивает преобразование любых экземпляров операторов импорта API обратно в устаревший синтаксис импорта EmberData «DS». Вы можете начать использовать полифил в своем приложении, обновив зависимость ember-cli-babel до версии 7.14 или выше для этой новой функции.


Хотите узнать больше о том, как использовать новый синтаксис импорта пакетов для ember-data? Обязательно прочитайте статью о выпуске Ember 3.11 еще раз, чтобы понять практические примеры кода, а также зайдите на канал #ember-data на Ember Discord, чтобы задать дополнительные вопросы.


Figma в связке со Storybook облегчает жизнь разработчика


Томас Госсманн (@gossi) начал серию публикаций о Figma, Ember и Storybook. Часть 1: Полнофункциональные темы в Figma расскажут вам все о том, как организовать ваш дизайн в Figma.


Оставайтесь с нами для части 2 о дизайн-токенах и части 3 о документации в экосистеме Ember. Следите за @unistyler в Твиттере, чтобы получать уведомления, когда они будут опубликованы.


Вы можете найти систему дизайна и код на GitHub.


QUnit DOM объявляет о выпуске v1.0


QUnit DOM предоставляет читаемые утверждения (assertions) для QUnit и доступны в Ember начиная с версии 3.1. Если вы еще не пробовали QUnit DOM, мы рекомендуем оценить его API, чтобы увидеть, как вы можете упростить свои тесты.


На прошлой неделе компания QUnit DOM объявила о выпуске версии 1.0, чтобы отметить стабильность проекта. Мы благодарим Тобиаса Бьенека (@Turbo87) и всех, кто помогал с проектом!


В версии 1.0 вы можете использовать цепочку утверждений:


assert.dom('[data-test-input="Email"]')
  .isRequired()
  .hasAttribute('type', 'email')
  .hasValue('zoey@ember.js');

Вы также можете попробовать новое утверждение hasProperty, чтобы проверить свойства DOM. Между hasAttribute (для проверки атрибутов HTML) и hasProperty (для свойств DOM) могут быть тонкие различия:


 //  Эти два утверждения эквивалентны.
assert.dom('[data-test-input="I Agree"]')
  .hasAttribute('checked', '')
  .hasProperty('checked', true);

 // Эти три утверждения эквивалентны.
assert.dom('[data-test-button="Delete"]')
  .hasClass('btn').hasClass('btn-red')
  .hasAttribute('class', 'btn btn-red')
  .hasProperty('className', 'btn btn-red');

Чтобы узнать больше о том, когда вы можете использовать hasAttribute или hasProperty, пожалуйста, посетите руководство на сайте JavaScript.info.


Вышел ember-changeset 3.0.0


Аддон Ember-changeset официально выпустил
версию 3.0.0. Аддон предоставляет класс Changeset, который представляет набор возможных изменений для любого объекта (Ember.Object, DS.Model, POJO и т.д.). Идея состоит в том, что обновляются только внутренние значения набора изменений, пока мы не вызовем метод save, который установит и сохранит действительные изменения в привязанном объекте.


В этом выпуске требуется Ember 3.13 и выше, а использование @tracked поможет ember-changeset и распространению изменений на уровень пользовательского интерфейса. Если ваше приложение <3.13 или вам нужно поддерживать IE11, вам лучше установить версию 2.0. Посмотрите видео вступление от EmberScreencasts, и начните использовать ember-changeset сегодня!


Благодарности контрибьюторам


На этой неделе мы хотели бы поблагодарить @bobisjan, @chancancode, @xg-wang, @pzuraq, @efx, @rwwagner90, @jenweber, @lifeart, @chadhietala, @mansona и @pichfl за их вклад в Ember и связанные с ним репозитории!


Есть вопрос? Задавайте их используя форму вопросов от читателей!



Хотите знать, что-то, связанное с Ember, Ember Data, Glimmer или аддонами в экосистеме Ember, но не знаете, где спросить? Для вас есть рубрика Вопросы читателей!


Отправьте свой собственный вопрос используя форму bit.ly/ask-ember-core. И не волнуйтесь, глупых вопросов нет, мы ценим любые вопросы — честно!


#embertimes


Хотите написать для Ember Times? Есть предложение для выпуска на следующей неделе? Присоединяйтесь к нам в #support-ember-times в Ember Community Discord или напишите в директ @embertimes в Твиттере.


Будьте в курсе того, что происходит в мире Ember, подписавшись на нашу еженедельную электронную рассылку! Вы также можете найти наши сообщения в блоге Ember.


Всем добра! И удачи!


Крис Нг, Анн-Грит ван Хервейнен, Исаак Ли, Джессика Джордан, Эми Лам и команда обучения


Предыдущий выпуск доступен по ссылке, а следующий — тут