Виджет может быть инициализирован несколькими строками JS, так как компонент требует много строк XML и все еще использует виджет. Так зачем кому-то использовать метод XML?
Компонентная система пользовательского интерфейса позволяет разработчику упаковать несколько различных модулей RequireJS в конструкторы моделей представлений KnockoutJS (со связанными «удаленными» шаблонами Knockout.js), а затем использовать эти модели представлений в исходном HTML-коде страницы Magento с помощью специальная привязка Knockout.js. Каждый компонент пользовательского интерфейса также связан с набором данных на стороне сервера. Конечная цель - создать сложную часть функциональности пользовательского интерфейса, которая представляет собой не просто один гигантский грязный файл javascript, но который конечные пользователи могут включить с помощью простого <uiCompnent name="foo"/>
в своем макете XML.
Итак, вы правы, что модальный виджет легче начать. Однако, если вы создаете сложный компонент пользовательского интерфейса и хотите, чтобы ваш сложный компонент пользовательского интерфейса включал модальные функциональные возможности, вы должны добавить компонент модального пользовательского интерфейса.
По крайней мере - это мое текущее понимание ситуации / системы. Больше контекста в моей серии компонентов пользовательского интерфейса (самостоятельная ссылка), если вам интересно