Нотатки міграції 0.x

Публічний API Volt UI заморожено від 1.0.0 — поточну обіцянку дивіться у Версіонування та стабільність . Оскільки компоненти копіюються у ваш проєкт, а не встановлюються залежністю, «оновлення» означає повторний запуск volt add <component> (або --force для перезапису) і порівняння змін — ніщо не оновлюється мовчки під вами. Ця сторінка описує зміни у до-1.0 випусках 0.x , які справді вимагали правити код шаблонів під час оновлення; окремий посібник для переходу 0.x → 1.0 див. у MIGRATION.md . Складено на основі CHANGELOG.md . Більшість випусків 0.x були доповнювальними; їх тут не наведено.

Зміни, що потребують дій

0.4.0

Button типово має type="button"

До 0.4.0 <volt-button> без явного type усередині <form> брав типове значення браузера, тобто "submit" . Якщо у вас була кнопка, що покладалася на цю неявну відправку, тепер вона нічого не робить, доки ви явно не задасте type="submit" .

<volt-button type="submit">Save</volt-button>   // was implicit, now required
0.2.0

Логічні входи приведено до booleanAttribute

disabled , required , multiple та подібні логічні входи по всій бібліотеці перейшли зі звичайних перевірок на «істинність» у JavaScript до трансформації booleanAttribute від Angular. Це важливо передусім, якщо ви передавали рядок у позиції атрибута шаблону: disabled="false" як голий атрибут тепер коректно вважається false , тоді як наївна перевірка на істинність раніше сприймала непорожній рядок "false" як істину.

Доповнювальні зміни, які варто перейняти

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

0.7.0

Підтримку Reactive Forms додано до combobox, listbox та input-OTP

Тепер вони реалізують ControlValueAccessor на додачу до наявної прив'язки моделі у стилі [(value)] — стара прив'язка працює без змін. Надалі краще брати formControlName / [formControl] заради стану валідації ( aria-invalid , поширення вимкненого стану, «торкнуто»), якого сама лише прив'язка моделі не дає.

Внутрішні виправлення (дій не потрібно)

  • 0.6.0 VoltSelect оголошував valueChange двічі; дублікат прибрано, тож єдиним згенерованим виходом володіє value = model(...) . Звичайна підписка на (valueChange) ніколи не зазнавала впливу.
  • 0.6.0 Випадні меню, відкриті з клавіатури, тепер правильно переводять фокус на перший видимий пункт.
Ніщо на цій сторінці не стосується компонента, який ви ще не копіювали, — свіжий volt add завжди дає поточну поведінку. Ця сторінка потрібна, щоб порівняти наявну копію. Як зберегти власні правки під час повторного додавання, див. у посібнику з налаштування .