Cuando un experimento está activo y se asigna una variación, Experiment Center inyecta automáticamente el contexto del experimento en el contexto de renderizado de la plantilla de página. Las plantillas de página no requieren un paso de habilitación explícita: el contexto del experimento se pasa a todas las plantillas de forma incondicional cuando hay un experimento activo. Las plantillas reciben el contexto como una variable local llamada experiment.
Durante la versión beta, Experiment Center se ejecuta solo en tenants de desarrollo. Los tenants de producción no son compatibles.
Campos de contexto disponibles
Los siguientes campos están disponibles en la plantilla de la página cuando hay un experimento activo:
Cuando no hay ningún experimento activo, experiment es null (o no está presente). Comprueba siempre que no sea null antes de usarlo.
Estructura de experiment.config
experiment.config es un mapa de pares clave-valor en el que cada clave es el nombre de un parámetro y cada valor es un objeto con una propiedad value:
Cada parámetro definido en el indicador de funcionalidad tiene un valor en config. Experiment Center combina los parámetros base con las sobrescrituras de la variación antes de inyectarlos, así que nunca tendrás que buscar el valor predeterminado por tu cuenta.
Leer un parámetro en una plantilla
Las plantillas de las páginas de Auth0 Universal Login usan EJS. En los ejemplos siguientes se usa la sintaxis de EJS.
Sintaxis de EJS:
Con una comprobación de valor nulo:
Personaliza Signup y Login con parciales
Cuando personalizas las pantallas de Signup y Login mediante parciales, el contexto del experimento se pasa explícitamente como parte del parcial.
En el parcial, está disponible la misma variable experiment:
Ejemplo: variante del texto del encabezado de registro
Este ejemplo muestra un indicador de funcionalidad con un parámetro de cadena que controla el encabezado de la página de registro. La variante de control usa “Crea tu cuenta”; la variante de tratamiento usa “Únete en segundos.”
Parámetros del indicador de funcionalidad:
Variación de control: sin sobrescrituras (hereda signup_headline: "Create your account")
Variación de tratamiento:
Código de la plantilla:
Los usuarios asignados a la variación de control ven “Create your account.” Los usuarios del grupo de tratamiento ven “Join in seconds.” Los usuarios sin ningún experimento activo también ven “Create your account” (la rama else).
Ejemplo: elemento condicional de la interfaz de usuario
Este ejemplo usa un parámetro booleano para mostrar u ocultar un elemento adicional de la interfaz de usuario:
La comparación === true (en lugar de una comprobación de valor truthy) evita que el elemento aparezca cuando experiment es null o cuando el parámetro no está presente.
Valores predeterminados seguros cuando no hay ningún experimento activo
Cuando no hay ningún experimento activo, experiment es null en el contexto de la plantilla. Estructura las plantillas de modo que siempre se rendericen correctamente sin el contexto del experimento:
O bien usa bloques if/else explícitos (más legibles para condiciones complejas):
Define de forma fija los valores de respaldo en tus plantillas. Coinciden con la configuración base de la variación de control, por lo que tus plantillas se comportarán correctamente tanto cuando no se esté ejecutando ningún experimento como cuando se asigne la variación de control.