Este es el código para el botón mencionado que actualiza la vista de Salesforce seleccionada:
<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 usando es:
setTimeout(autorefresh, 60000); function autorefresh() { document.getElementsByClassName("forceRefreshButton").click(); setTimeout(autorefresh, 60000); } autorefresh();La función debe ejecutarse cada 60 segundos y hacer clic en el botón Actualizar vista. Pero parece que no puedo obtener el elemento correcto.
setInterval() , para que se haga clic en el botón repetidamente..getElementsByClassName() devuelve una HTMLCollection , no un Element , por lo tanto, no puede llamar a .click() en él..click() en un botón, .forceRefreshButton no es un elemento <button> . function autorefresh() { document.querySelector('.forceRefreshButton > button').click(); } setInterval(autorefresh, 60000);