2011-05-12 16 views
6

Tengo una aplicación de varias páginas que necesita cambiar manualmente de una página a otra. podría hacerse en GWT ya que está dirigido a la aplicación de una sola página. Estoy aprendiendo del código de Google y de los foros en línea, pero no pude encontrar ninguna aplicación que tuviera múltiples páginas sin enlace por un punto de entrada común. ¿Algunas ideas?gwt aplicación de varias páginas

Respuesta

9

GWT tiene soporte para "páginas" dentro de la aplicación a través de la URL fragment identifier (FI), es decir, http://www.yourhost.vom/main#pagename, donde "nombre de página" es un identificador de fragmento que representa una "página" dentro de su aplicación.

Estas "páginas" (tenga en cuenta que el navegador nunca realmente recarga la página, por lo que la aplicación GWT se mantiene igual), tienen compatibilidad con el historial completo y son marcadores.

NOTA: en todo el documento GWT, el identificador de fragmento a veces se denomina token de lugar o token de historial.

  1. Habilitar history support mediante la adición de un iframe a la página de acogida:

    <iframe src="javascript:''" 
         id="__gwt_historyFrame" 
         style="width:0;height:0;border:0"> 
    </iframe> 
    
  2. Registrar una ValueChangeHandler Para ser notificado cuando FI (página) cambios: History.addValueChangeHandler(..). Dentro de este controlador pone una lógica que muestra la página nueva.

  3. Ir a una página en particular llamando History.newItem("newpage") (sin #)

  4. incluso puede pasar "parámetros" a la página, dividiendo identificador de fragmento en partes sub: por ejemplo "# editar/user4". Simplemente analice este FI, invoque el código que muestra la página de edición y pase "user4" a él. Puedes usar cualquier caracter para dividir FI en una parte de "página" y una parte de "parámetro" (yo uso "/" aquí). Para ver esto en la vida real: abre un mensaje en gmail y mira la URL.

+0

cualquier ejemplo para esta aplicación de varias páginas. ¿Cómo implementaría un normal en gwt o crearía solo páginas estáticas sin el parámetro de análisis – user477469

+0

? No hay páginas estáticas en la aplicación GWT. Puede crear uno en su servidor, pero esto significa dejar la aplicación GWT. Un ancla normal se hace así: ', donde maneja" página2 "en su código y muestra lo que desea. –

Cuestiones relacionadas