Я хочу показать Timepicker в моей форме UiComponent
В Magento Docs показаны варианты, которые они предоставляют:
Я хочу это с помощью UiComponent в моей форме.
Примечание: нужно показывать расписание, поэтому дата не нужна.
Проверенная ссылка: Как добавить средство выбора временного диапазона в форму adminhtml в Magento 2? (Но это с помощью блока, я хочу использовать UiComponent)
magento-2.1
uicomponent
time
Ронак Чаухан
источник
источник
Ответы:
Вам нужно «создать» * свой собственный компонент пользовательского интерфейса. Вы можете сделать это, расширив компонент Date UI.
# 1 Добавьте XML в вашу форму
Добавьте поле в набор полей. В этом примере компонент, который мы будем создавать, называется
time
. Обратите внимание, что вы можете объявитьtemplate
в следующем XML. Однако на самом деле это не принесет пользы, так как это шаблон XHTML, который обернет шаблон Knockout, который выполняет фактический рендеринг. Есть и другие узлы, которые вы можете объявить здесь как валидация.# 2 Создание компонента пользовательского интерфейса
Несколько замечаний по вышеуказанному Javascript:
elementTmpl
не обязательно. Однако, если вы хотите настроить шаблон (в настоящее времяmodule-ui/view/base/web/templates/form/element/date.html
), просто создайте свой собственный шаблон и ссылайтесь на негоelementTmpl
.Есть больше вариантов для ввода. Вы можете найти больше о них: http://trentrichardson.com/examples/timepicker/#tp-options . В коде есть список всех значений по умолчанию:
/lib/web/jquery/jquery-ui-timepicker-addon.js
Конечный результат:
definitions.xml
. Однако вы можете расширить их с минимальными усилиями. (И, если есть способ, пожалуйста, дайте мне знать).источник
Вы можете просто использовать этот код XML для того же результата, что и выше:
Результат:
источник