Conocer las funciones que hay que evitar en Lightning Experience
Objetivos de aprendizaje
Después de completar esta unidad, podrá:
- Enumerar al menos dos componentes que hay que evitar en páginas que se utilice en Lightning Experience.
- Identificar tres funciones de Lightning Experience donde no puede utilizar páginas o componentes de Visualforce.
Conocer las funciones que hay que evitar en Lightning Experience
Existe un número limitado de componentes de Visualforce que recomendamos que evite en páginas que se utilicen en Lightning Experience. Además, algunas funciones de Visualforce se comportan de forma diferente cuando se utilizan en Lightning Experience. Finalmente, existen algunos puntos en Lightning Experience donde no puede utilizar páginas o aplicaciones de Visualforce, o donde es posible que no funcionen como se espera.
Lightning Experience está evolucionando y creciendo aún, y (¡Alerta de la Ley de Protección de Datos!), esperamos reducir la lista a medida que pase el tiempo.
No se puede suprimir el encabezado y el menú de navegación de Lightning Experience
Las páginas de Visualforce siempre se muestran con la interfaz de usuario estándar de Lightning Experience cuando se ejecutan en Lightning Experience. No hay forma de suprimir o alterar el encabezado o la barra lateral de Lightning Experience. En particular, los atributos showHeader y sidebar de <apex:page> no tienen efecto en páginas de Visualforce cuando se muestran en Lightning Experience.
Este comportamiento es intencionado. Las aplicaciones que se muestran en Lightning Experience son aplicaciones de Lightning Experience. Si necesita proporcionar una interfaz completamente personalizada para su aplicación, tendrá que ejecutarla en Salesforce Classic.
El encabezado y la barra lateral de Salesforce Classic siempre se suprimen
El encabezado y la barra lateral estándar de Salesforce Classic siempre se suprimen en las páginas cuando se muestran en Lightning Experience. En particular, los atributos showHeader y sidebar de <apex:page> no tienen efecto en páginas de Visualforce cuando se muestran en Lightning Experience.
Las páginas se comportan como si los atributos showHeader y sidebar de <apex:page> se establecen en false.
<apex:relatedList> y listas relacionadas en lista de bloqueo
Existe un número de listas relacionadas que no se admiten en Lightning Experience. Estas listas relacionadas están “en lista de bloqueo”, lo que indica que se desaconseja explícitamente su uso. Como podría esperar, estas mismas listas relacionadas están en lista de bloqueo en Visualforce con la etiqueta <apex:relatedList>.
Consulte “Acceso a datos y vistas: Qué es diferente o no está disponible en Lightning Experience” en la ayuda online para obtener detalles sobre las listas relacionadas que no se admiten en Lightning Experience.
Evitar <apex:iframe>
Aunque no es imposible utilizar <apex:iframe> en una página de Visualforce en Lightning Experience, recomendamos evitarlo.
Las páginas de Visualforce se encierran en su propio iframe cuando se muestran en Lightning Experience. Como se trata ampliamente en Exploración del contenedor de aplicaciones de Visualforce, esto tiene un número de implicaciones significativas sobre el comportamiento de la página. La incorporación de un nivel adicional a la pila de iframe aumenta la complejidad del entorno.
Puede manejar esta complejidad si entiende de iframes y cómo afectan el DOM y a JavaScript. De todos modos, es difícil depurar iframes anidados si no tiene experiencia trabajando con ellos. Por esta razón, sugerimos que evite esta etiqueta en páginas utilizadas en Lightning Experience.
No, de veras, no establezca window.location directamente
En este punto ya debemos parecer un disco rayado, pero es importante. Si el código JavaScript de su página está estableciendo la variable window.location directamente, eso no funcionará cuando la página se muestre en Lightning Experience. Deberá modificar este código para que la página funcione en Lightning Experience.
Consulte la unidad Gestión de la navegación para obtener detalles.
sforce.one no es solo para la aplicación móvil Salesforce
El objeto de utilidad JavaScript sforce.one está disponible en páginas de Visualforce en la aplicación Salesforce y Lightning Experience. Si estuvo utilizando la presencia del objeto sforce.one como método para saber si su página está ejecutándose en un contexto móvil o de sobremesa, tendrá que actualizar su código.
Utilice uno de los métodos documentados para distinguir entre los entornos Salesforce Classic, la aplicación Salesforce y Lightning Experience. Las técnicas admitidas están disponibles en Visualforce, Apex y JavaScript.
Para consultar todos los detalles, vea la unidad Compartir páginas de Visualforce entre Classic y Lightning Experience.
Cambios con sustituciones de acciones
Quizá el cambio más significativo en lo referente a cosas que pueden ser difíciles de solucionar es que las sustituciones de Visualforce de acciones estándar son ligeramente diferentes en Lightning Experience en comparación con Salesforce Classic. Cualquier sustitución para la acción de lista de objetos no estará accesible en Lightning Experience.
De forma específica, hay seis acciones estándar que puede sustituir por la mayoría de los objetos estándar y personalizados en Salesforce Classic:
- Ficha Objeto
- Lista de objetos
- Vista de registros
- Modificación de registros
- Creación de registros
- Eliminación de registros
En Lightning Experience las dos primeras acciones se han combinado en una página, la página de inicio de objetos. La página de inicio de objetos es similar a la lista de objetos, junto con algunos elementos de la ficha Objeto, como los elementos recientes. Otros elementos, como los reportes o las herramientas, se trasladan a otras partes de la interfaz de usuario.
Sin que sea relevante la configuración de la interfaz de usuario en su organización, la ficha Objeto y la lista de objetos pueden sustituirse en Configuración. La sustitución de la acción de la ficha Objeto sustituye la página de inicio de objetos en Lightning Experience.
No obstante, no se puede acceder a la acción de lista de objetos en la interfaz de usuario de Lightning Experience, de modo que no hay manera de activarla. Si su organización sustituyó la acción de la lista de objetos de cualquier objeto, las funciones no estarán disponibles cuando los usuarios utilicen Lightning Experience. Si hay funciones esenciales en esa sustitución, tendrá que encontrar otra forma de dejarlas disponibles.
Esta tabla enumera las acciones estándar que puede sustituir para un objeto en Configuración, y la acción que se sustituye en las tres experiencias de usuario diferentes.
Sustitución en Configuración | Salesforce Classic | Lightning Experience | La aplicación Salesforce |
---|---|---|---|
Ficha | ficha Objeto | página de inicio de objeto | buscar |
Lista | lista de objetos | n/a | página de inicio de objeto |
Ver | vista de registro | página de inicio de registro | página de inicio de registro |
Modificar | modificación de registro | modificación de registro | modificación de registro |
Nueva | creación de registro | creación de registro | creación de registro |
Eliminar | eliminación de registro | eliminación de registro | eliminación de registro |
Recursos
- Sustitución de una página existente por una página de Visualforce
- Guía del desarrollador de Visualforce