Quando usamos o componente DynamicForm com as opções options e optionsMulti nas opções, o validate não funciona quando tem apenas 3 opções ou menos.
Não funciona nem configurando pelo TypeScript e nem configurando no Template, com [p-validate].
Reprodução Criada no StackBlitz: Descomente e Comente a linha 38 do App Component para ver que o validate só começa a funcionar quando mais de 3 opções estão disponíveis na lista Options.
E a propriedade que tô tentando usar é o validate.
A ideia é quando eu selecionar várias opções, ele mostrar no log as opções selecionadas
E depois disso, fazer algo com esses dados ou poder enviar para um botão ou outro componente...
Mas só funciona quando tem mais de 3 opções. Se tem 3 ou menos, ele buga e não aplica o validate.
camposDynamicForm: PoDynamicFormField[] = [
{
property: 'listaDeUsuarios',
label: 'Selecione os Usuários...',
gridColumns: 12,
order: 1,
required: true,
hideSelectAll: true,
optionsMulti: true,
options: [
{ label: 'TOTVS USER', value: 'TOTVS USER' },
{ label: 'RAUL', value: 'RAUL' },
{ label: 'PO UI', value: 'PO UI' },
// Só quando tem mais de três dados que o `validate` funciona.
// { label: 'HABILITAR VALIDATOR', value: 'HABILITAR VALIDATOR' },
],
validate: this.validarUsuariosSelecionados.bind(this),
},
];
validarUsuariosSelecionados(usuariosSelecionados: any) {
console.log(`Usuarios Selecionados no Multi Select / Group Checkbox:
${JSON.stringify(usuariosSelecionados)}`);
}
Tem um comportamento estranho também.
Se eu adiciono MAIS uma opção mas que contenham os mesmos nomes / valores que outras opções, ele contabiliza como uma nova opção e o validate começa a funcionar, de uma forma esquisita.
Reprodução
Quando usamos o componente DynamicForm com as opções
options
eoptionsMulti
nas opções, ovalidate
não funciona quando tem apenas 3 opções ou menos.Não funciona nem configurando pelo TypeScript e nem configurando no Template, com
[p-validate]
.Reprodução Criada no StackBlitz: Descomente e Comente a linha 38 do App Component para ver que o
validate
só começa a funcionar quando mais de 3 opções estão disponíveis na listaOptions
.https://stackblitz.com/edit/po-ui-funb2y?devToolsHeight=33&file=src%2Fapp%2Fapp.component.ts
Quando eu acrescento mais de três options, ele funciona. O componente é o Dynamic Form:
https://po-ui.io/documentation/po-dynamic-form
E a propriedade que tô tentando usar é o
validate
. A ideia é quando eu selecionar várias opções, ele mostrar no log as opções selecionadas E depois disso, fazer algo com esses dados ou poder enviar para um botão ou outro componente...Mas só funciona quando tem mais de 3 opções. Se tem 3 ou menos, ele buga e não aplica o
validate
.Tem um comportamento estranho também. Se eu adiciono MAIS uma opção mas que contenham os mesmos nomes / valores que outras opções, ele contabiliza como uma nova opção e o
validate
começa a funcionar, de uma forma esquisita.Gravei um vídeo pra mostrar esse exemplo e o outro também: https://youtu.be/OVAvsK0AxTY