Agregar funciones de validación a componentes de pantalla personalizados

Ahora puede agregar funciones de validación personalizadas a sus componentes de pantalla personalizados.

Dónde: Este cambio se aplica a Lightning Experience y Salesforce Classic en Essentials Edition, Professional Edition, Enterprise Edition, Performance Edition, Unlimited Edition y Developer Edition. Los componentes de pantalla solo se admiten en el tiempo de ejecución de Lightning.

Cómo: Para incorporar funciones de validación a un componente de pantalla personalizado, agregue el atributo validate del tipo Aura.Action a las declaraciones de su componente. Utilice un método init de controlador para establecer el atributo validate a una función que realice una determinación de validación. La función se ejecutará cuando el usuario del flujo haga clic en Siguiente o cuando un componente ejecute la función de navegación. La función de validación debe devolver dos parámetros: isValid y errorMessage. Si isValid se establece como false, el intento de continuar se cancelará y se mostrará el valor de errorMessage.

A continuación se muestra un ejemplo de cómo implementar una función de validación.

<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.*/' 
                  }; 
              }}) 
        } 
})

Actualizaciones relacionadas para desarrolladores

Componentes Lightning
Nuevo atributo de validación en la interfaz lightning:availableForFlowScreens.