Centro de Ajuda

Como gerar uma lista de seleção com opções dinâmicas no Aivo Studio?

Sobre o componente de formulário

Este fluxo permitirá criar um complemento de formulário com uma lista de seleção dinâmica para todos os canais

Sobre o componente Function "Set Initial Params"

Neste componente se criam os objetos necessários:

* msg.count => Contador necessário para enumerar a lista dinâmica.

* msg.dynamicCallbackLabel => Objeto que irá armazenar o "callback_label" para canais assíncronos

* msg.dynamicSelectOptions => Objeto que irá armazenar as opções para os canais síncronos

Sobre o componente Function "Data Mockup - Users List"

Define o objeto msg.data, que simula a resposta de um endpoint.

Sobre o componente Array Loop "Users Loop"

Este componente itera o objeto msg.data que contém os dados.

Sobre o componente Function "Build The List"

* A variável "lineBreak" contém a quebra de linha para as opções de canais assíncronos.

* A função "getNumberEmoji" recebe um valor numérico e devolve um emoji numérico.

* O contador é incrementado.

* Os valores são armazenados dinamicamente nos objetos "msg.dynamicCallbackLabel" e "msg.dynamicSelectOptions".

Sobre o componente Form

Este componente é utilizado para gerar a estrutura básica de um formulário dentro do objeto "complementos".

Sobre o componente Function "Set Form Options"

Este complemento substitui os parâmetros estáticos "callback_label" e "options" com os objetos criados dinamicamente no componente Function "Build The List".

Como testar este fluxo?

Executando o Complemento Inject, pode-se ver o resultado no console "debug".

Como usar este fluxo?

* A configuração do Complemento Function "Set Initial Params" não deve ser modificada.

* O Complemento Function "Data Mockup - User List" deve ser substituido pelos dados obtidos de um Request (Complemento Http Request).

* O dados obtidos pelo Complemento Http Request, vão estar no objeto "payload".

* Estes dados devem ser amazenados em um objeto diferente de "payload" (neste exemplo: msg.data), já que o objeto mencionado será substituido em cada iteração do Complemento Loop.

* Dentro do Complemento Function "Build The List", a opção deve ser armazenada de forma dinamica em cada iteração do loop. (neste exemplo: msg.payload.name)

* Deste modo, os objetos que conterão a lista de seleção serão criados (neste exemplo: msg.dynamicCallbackLabel e msg.dynamicSelectOptions).

* Finalmente estes objetos substituem os parametros do forumário. Respectivamente:

    - msg.payload.complements[0].param[0].callback_label = msg.dynamicCallbackLabel.

    - msg.payload.complements[0].param[0].options = msg.dynamicSelectOptions

undefined

Faça o download do fluxo clicando neste link.


Este site armazena cookies em seu computador. Estes cookies são utilizados para coletar informações de como você interage com o nosso site e nos permite lembrar de você. Nós usamos essa informação para melhorar e personalizar sua experiência de navegação e para obter estatísticas e métricas sobre nossos visitantes, tanto neste site quanto em outros meios. Para obter mais informações sobre os cookies que utilizamos, consulte nossa Política de Privacidade.

Se você recusar, sua informação não será rastreada quando você visitar este site. Será utilizado somente um cookie em seu navegador para lembrá-lo de sua preferência de não ser rastreado.