Quero mostrar timepicker na minha forma UIComponent
Como o Magento Docs mostra as variações que eles fornecem ao timepicker:
Eu quero isso usando UiComponent no meu formulário.
Nota: É necessário mostrar o horário da programação para que não seja necessária uma data.
Referência verificada: Como adicionar o seletor de intervalo de tempo ao formulário adminhtml no Magento 2? (Mas está usando bloco, eu quero usar UiComponent)
magento-2.1
uicomponent
time
Ronak Chauhan
fonte
fonte
Respostas:
Você precisa "criar" * seu próprio componente de interface do usuário. Você pode fazer isso estendendo o componente da interface do usuário da data.
# 1 Adicione o XML ao seu formulário
Adicione o campo ao fieldset. Neste exemplo, o componente que iremos criar é chamado
time
. Observe que você pode declarar umtemplate
no XML a seguir. No entanto, ele não será realmente bom, pois é o modelo XHTML que envolve o modelo Knockout que faz a renderização real. Existem outros nós que você pode declarar aqui como validação.# 2 Crie o componente da interface do usuário
Algumas notas sobre o Javascript acima:
elementTmpl
não é necessário. No entanto, se você deseja personalizar o modelo (atualmentemodule-ui/view/base/web/templates/form/element/date.html
), basta criar seu próprio modelo e referenciá-loelementTmpl
.Existem mais opções para a entrada. Você pode encontrar mais informações sobre eles: http://trentrichardson.com/examples/timepicker/#tp-options . No código, há uma lista de todos os padrões aqui:
/lib/web/jquery/jquery-ui-timepicker-addon.js
Resultado final:
definitions.xml
. No entanto, você pode estendê- los com o mínimo esforço. (E, se houver uma maneira, por favor me avise).fonte
Você pode apenas usar esse código xml para o mesmo resultado acima:
Resultado:
fonte