Invalidar instantánea de la página anterior en la primavera Webflow

Rahul Vala:

Estoy usando la primavera Webflow y estoy a redirigir a partir de un view-statea action-statea view-state. Ahora, cuando el usuario está en el segundo view-state, no quiero que el usuario sea capaz de hacer clic en el botón Atrás del navegador y vaya a la página anterior.

He descubierto que, history="invalidate"puede ser utilizado para invalidar la instantánea de la página anterior. He intentado utilizar en el transition. Sin embargo, no su trabajo (el botón atrás del navegador no está desactivado).

Entonces, ¿qué puedo añadir a mis estados Webflow con el fin de desactivar el botón de retroceso y sólo permite que el usuario utilice los controles de navegación que se encuentran dentro de la página?

Gracias

dbreaux:

A lo que el estado ¿ha agregado el historyatributo?

En primer lugar, <action-state>no lo soporta ( https://jira.spring.io/browse/SWF-1481 ).

Habría que añadir que a la primera <view-state>transición 's. Lo cual, si sólo quería hacerlo de forma condicional en algo que sucedió en el <action-state>, no sería suficiente. Terminamos la creación de código Java para llamar desde nuestro <action-state>método para hacer esto.

/**
 * Invalidate WebFlow history. For use in action-state, where the transition element is not able
 * to specify to invalidate history.
 */
public static void invalidateHistory() {
    RequestContext context = RequestContextHolder.getRequestContext();

    synchronized(context.getFlowExecutionContext()) {
        DefaultFlowExecutionRepository r =
                (DefaultFlowExecutionRepository)
                ((FlowExecutorImpl)
                    context.getActiveFlow().
                    getApplicationContext().
                    getBean(FlowExecutor.class)).getExecutionRepository();
        r.removeAllFlowExecutionSnapshots((FlowExecution)context.getFlowExecutionContext());
    }
}

(También, nota que "invalida" invalida el estado y todo a su paso. Si sólo desea evitar que solo estado, que haría uso de "descarte" en su lugar. Https://docs.spring.io/spring-webflow/docs /current/reference/html/views.html#view-backtracking )

Supongo que te gusta

Origin http://43.154.161.224:23101/article/api/json?id=364031&siteId=1
Recomendado
Clasificación