Hacer clic automáticamente en el botón de actualización en Salesforce Lightning.
Este es el código para el botón mencionado que actualiza la vista seleccionada de Salesforce:
<div class="slds-button-group">
<lightning-button-icon class="forceRefreshButton rotate">
<button name="refreshButton" title="Refresh" type="button" class="slds-button slds-button_icon slds-button_icon-border-filled">
<lightning-primitive-icon>
<svg focusable="false" data-key="refresh" aria-hidden="true" viewbox="0 0 52 52" class="slds-button__icon">
<g>
<path d="M46.5 4h-3c-.8 0-1.5.7-1.5 1.5v7c0 .9-.5 1.3-1.2.7-.3-.4-.6-.7-1-1-5-5-12-7.1-19.2-5.7-2.5.5-4.9 1.5-7 2.9-6.1 4-9.6 10.5-9.7 17.5-.1 5.4 2 10.8 5.8 14.7 4 4.2 9.4 6.5 15.2 6.5 5.1 0 9.9-1.8 13.7-5 .7-.6.7-1.6.1-2.2l-2.1-2.1c-.5-.5-1.4-.6-2-.1-3.6 3-8.5 4.2-13.4 3-1.3-.3-2.6-.9-3.8-1.6C11.7 36.6 9 30 10.6 23.4c.3-1.3.9-2.6 1.6-3.8C15 14.7 19.9 12 25.1 12c4 0 7.8 1.6 10.6 4.4.5.4.9.9 1.2 1.4.3.8-.4 1.2-1.3 1.2h-7c-.8 0-1.5.7-1.5 1.5v3.1c0 .8.6 1.4 1.4 1.4h18.3c.7 0 1.3-.6 1.3-1.3V5.5C48 4.7 47.3 4 46.5 4z"></path>
</g>
</svg>
</lightning-primitive-icon>
<span class="slds-assistive-text">Refresh</span>
</button>
</lightning-button-icon>
</div>
El código que estoy utilizando es:
setTimeout(autorefresh, 60000);
function autorefresh() {
document.getElementsByClassName("forceRefreshButton").click();
setTimeout(autorefresh, 60000);
}
autorefresh();
La función debería ejecutarse cada 60 segundos y hacer clic en el botón de actualización de la vista. Pero parece que no puedo obtener el elemento correcto.
Resumen del código:
Código general: ver imagen
davy.ai
Este código utiliza JavaScript para actualizar automáticamente una vista de Salesforce haciendo clic en el botón de actualización cada 60 segundos. El código utiliza la función
setTimeout()
para repetir la acción (autorefresh()
) cada 60 segundos.La función
autorefresh()
obtiene el elemento con la clase “forceRefreshButton” utilizandodocument.getElementsByClassName()
y luego llama al métodoclick()
para simular hacer clic en el botón de actualización.Sin embargo, el código parece tener problemas para encontrar el elemento correcto en el que hacer clic. Una inspección visual del código HTML sugiere que el botón de actualización está anidado dentro de un elemento
div
con la clase “slds-button-group” y un elementolightning-button-icon
. Por lo tanto, modificar el código para dirigirse al elemento correcto puede solucionar el problema.