angularjs – UI-Router的解析函数只能调用一次
我将使用ui路由器解析功能,在我的控制器中注入一些可靠的解决方案。
我以示例plnkr为例。 http://plnkr.co/edit/mi5H5HKVAO3J6PCfKSW3?p=preview 我猜这是有意的,但是考虑这个用例: 我只是简单地测试了这一点,但是如果州不是嵌套的东西将按照我的预期工作。由于这个臭味,放弃了嵌套的国家。并且在嵌套状态中具有解决依赖关系实际上是不错的。
提供选项reload:true to go()/ transtionTo()/ ui-sref做的诀窍:-)
感谢设计代码指向我这个方向。解决方案有所不同,所以我写了这个答案。 重新加载是documented as follows:
直接的方法是将每个ui-sref链接更改为以下内容:< a ui-sref =“route1”ui-sref-opts =“{reload:true}”> ;. 为了避免在每个链接提供选项,我写了一个围绕$ state的装饰器(另见http://plnkr.co/edit/mi5H5HKVAO3J6PCfKSW3?p=preview): myapp.config(function($provide) { $provide.decorator('$state',function($delegate) { var originalTransitionTo = $delegate.transitionTo; $delegate.transitionTo = function(to,toParams,options) { return originalTransitionTo(to,angular.extend({ reload: true },options)); }; return $delegate; }); }); (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |