问题描述
我希望能够通过Angular2应用程序完全重新加载,因为数据有所更改.我可以通过$route.reload()
(甚至是$state.go($state.current.name, $state.params, {reload: true})
)在AngularJS中做到这一点,但现在找不到等效项.
I would like to be able to fully reload by Angular2 app because something has changed in the data. I could do that in AngularJS through $route.reload()
(or even $state.go($state.current.name, $state.params, {reload: true})
), but I can't find an equivalent now.
我知道有Router.renavigate()
,但这似乎没什么用.它应该按照我的要求做吗?还有另一种方法吗?
I know there's Router.renavigate()
, but that doesn't seem to do much. Is it supposed to do what I'm asking for? Is there another way?
推荐答案
我想我已经知道了.如果组件实现CanReuse
(来自角度/路由器")并从其覆盖的canReuse()
方法返回false,则router.renavigate()
将丢弃该组件并对其进行重建.
I think I have figured this out. router.renavigate()
will throw away the Component and rebuild it if the Component implements CanReuse
(from 'angular/router') and returns false from the canReuse()
method it overrides.
从42版开始,这对我有效.
This works for me as of alpha 42.
这篇关于在Angular2中替代AngularJS的$ route.reload()吗?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!