La principal desventaja es que tiene un poco de dolor con la indexación de contenido de su sitio.
Para Google puede resolver el problema en algún lugar usando el esquema de rastreo. Google admite el rastreo que le permite indexar dinámicamente (sin recargar la página) el contenido generado de su página.
Para hacer esto, sus enlaces virtuales deben ser direcciones como: http://yoursite.com/#!/register/. En este caso, Google solicita al http://yoursite/register/ que indexe el contenido de la dirección.
Al hacer clic en el enlace virtual no hay recarga de página. Usted puede proporcionar mediante el uso de onclick:
<a href='http://yoursite.com/#!/register/' onclick='showRegister()'>Register</a>
ventaja virtual es que el contenido de una página cambiada sin tener que recargar de la página. En mi práctica, no uso la generación de Javascript para hacer esto porque construyo mi interfaz en posiciones fijas. Cuando el usuario vuelve a cargar la página no nota nada porque los elementos de la interfaz aparecen en los lugares esperados.
Por lo tanto, mi opinión de que el uso de la generación de páginas dinámicas es un gran dolor. Creo que Google no lo hizo para separar el marcado y el backend (no es un problema real, puedes usar una estructura compleja de backend-frontend para hacer eso), sino para usar las ventajas de una representación conveniente y agradable para los usuarios.
Creo que esto cabría mejor en [programadores.se] – zzzzBov