Diferencia entre $ state.transitionTo () y $ state.go () en Angular ui-router


Respuestas:


151

¿Te refieres al enrutador AngularUI ? Si es así, la wiki especifica las diferencias :

$ state.go (a [, toParams] [, opciones])

Devuelve una promesa que representa el estado de la transición.

Método de conveniencia para la transición a un nuevo estado. $state.gollama $state.transitionTointernamente, pero establece automáticamente las opciones en { location: true, inherit: true, relative: $state.$current, notify: true }. Esto le permite usar fácilmente una ruta absoluta o relativa a y especificar solo los parámetros que le gustaría actualizar (mientras permite que los parámetros no especificados hereden del estado actual).


$ state.transitionTo (to, toParams [, options])

Devuelve una promesa que representa el estado de la transición.

Método de bajo nivel para la transición a un nuevo estado. $state.go()utiliza transitionTointernamente. $state.go()se recomienda en la mayoría de situaciones.


1
Encontré más información que necesito de sus enlaces dados. Muchas gracias Brandon :)
Barcelona

1
Aparentemente, los valores ingresados ​​en la vista no se eliminan si vuelvo a activar la vista usando transitTo. De todos modos, ¿podemos forzar la actualización de los valores / js / view? PD - La recarga de página no es una opción ya que la vista es una superposición
Swanidhi

10

$state.transitionTotransitar a un nuevo estado. En la mayoría de los casos, no es necesario que lo use, es posible que lo prefiera$state.go .

Toma algunos parámetros en un optionsobjeto:

  • location: Si trueactualizará la URL en la barra de ubicación, si falseno. Si es string "replace", actualizará la URL y también reemplazará el último registro del historial.
  • inherit: Si trueheredará los parámetros de la URL de la URL actual.
  • relative (stateObject, predeterminado null) : al realizar la transición con una ruta relativa (por ejemplo, '^'), define de qué estado será relativo.
  • notify: Si true, retransmisiones $stateChangeStarty $stateChangeSuccesseventos.
  • reload: Si trueforzará la transición incluso si el estado o los parámetros no han cambiado, también conocido como una recarga del mismo estado.

$state.goes una especie de atajo que llama $state.transitionTocon opciones predeterminadas:

  • location: true
  • inherit: true
  • relative: $state.$current
  • notify: true
  • reload: false

Es más conveniente ya que el Synthax es más simple. Puede llamarlo solo con un nombre de estado.

$state.go('home');
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.