Adicionar funções de validação a componentes da tela personalizados

Agora você pode adicionar validação personalizada aos seus componentes personalizados da tela.

Onde: Essa alteração se aplica ao Lightning Experience e ao Salesforce Classic nas edições Essentials, Professional, Enterprise, Performance, Unlimited e Developer. Há suporte para componentes da tela apenas no Tempo de execução do Lightning.

Como: Parar fornecer suporte de validação para um componente da tela personalizado, adicione um atributo validate do tipo Aura.Action às declarações do seu componente. Use um método init do controlador para definir o atributo validate a uma função que realize uma determinação de validação. A função é executada quando o usuário do fluxo clica em Avançar ou quando um componente executa a função de navegação. A função de validação deve retornar dois parâmetros: isValid e errorMessage. Se isValid for definido como false, a tentativa de prosseguir será cancelada e o valor de errorMessage será exibido.

Aqui está um exemplo de como implementar suporte de validação.

<aura:component implements="lightning:availableForFlowScreens" access="global"> 
    <!--When the component renders, it calls init handler.--> 
    <aura:handler name="init" value="{!this}" action="{!c.init}"/> 
    
    <!--Declare the validation attribute so it can store the validation logic.--> 
    <aura:attribute name="validate" type="Aura.Action"/> 
    
    <!-- component markup --> 
</aura:component>
({ 
    init: function(cmp, event, helper) { 
        // Set the validate attribute to a function that includes validation logic. 
        cmp.set('v.validate', function() { 
              if(/* true conditions */) { 
                  return { isValid: true }; 
              } 
              else { 
                  //If the component is invalid, return the isValid parameter as false and return an error message. 
                  return { 
                      isValid: false, 
                      errorMessage: '/*A message that helps your user enter a valid value or explains what went wrong.*/' 
                  }; 
              }}) 
        } 
})

Atualizações relacionadas para desenvolvedores

Componentes do Lightning
Novo atributo de validação na interface lightning:availableForFlowScreens.