2015-12-25 10 views
5

Açısal 1 ve ui yönlendiricide I kullanmış durumları, verileri bir durumdan diğerine geçirmek için (URL parametrelerini kullanmadan) çok param yapar. Açısal 2'de mümkün mü?Angular 2'deki durum params (Angular 1 & ui-router) eşdeğeri ne kadardır?

Yönlendirici, RouteParams, RouterLink ve RouteData bu Açısal 2.

+0

RouteParams, $ routeParams veya $ stateParams ile aynı rolü oynar. Ve $ stateParams ** ** URL yolunu ve sorgu parametrelerini değiştirmek için kullanılır: https://github.com/angular-ui/ui-router/wiki/URL-Routing#stateparams-service. Alıntı: * $ stateParams, denetleyicilerinize veya diğer hizmetlere, gezilen URL'nin tek tek bölümleri için mükemmel bir yoldur *. –

+0

Cevabınız için teşekkür ederiz, Array veya Object gibi verileri almak için $ stateParams'ı kullanabilirsiniz. Param API'larını kontrol edin: http://angular-ui.github.io/ui-router/site/#/api/ui.router.state.$stateProvider "İsteğe bağlı olarak URL'de bildirilen parametreleri yapılandıran veya tanımlayan bir harita ek olmayan URL parametreleri. " Ben "non-url parametreleri" – Shprink

+0

Ben ilgilenen mümkün olduğunu bilmiyordum. Ama yine de bana kötü bir fikir gibi geliyor. Parametreler URL'de değilse, sayfayı yenilemek işe yaramaz: parametre değerleri kaybolacaktır. –

cevap

-1
mümkün görünmüyor başka

<a ui-sref="home({user: myCtrl.user})"> 

bir durumdan diğerine, bir kullanıcı nesnesi geçmek istiyorum mesela bu işlemek için görünmüyor Eğer Açısal 2 yönlendirici kullanıyorsanız

, bu durumda id olarak

<a [routerLink]="['/ProductDetail', {id: 1234}]">Product Details</a> 

sizin halidir, örneğin, @RouteParams yoluyla devlet geçebilir ve bu herhangi bir nesne, örneğin .: Öte yandan

<a [routerLink]="['/ProductDetail', myStateObject]">Product Details</a> 

olabilir, Açısal 2 bileşenin @Input() parametreleri bağlanma kullanılarak parametrelerin iletilmesi için bir mekanizmaya sahiptir, ancak bu, sadece aynı yol içinde kullanılabilir.

+0

Cevabınız için teşekkürler, ama sorum bu konuyla ilgili değil. "URL olmayan parametreler" ile ilgileniyorum. Cevabınızı güncellemek istiyorsanız lütfen karışıklığı önlemek için soru hakkındaki yorumları okuyun. – Shprink