我有两个抽象状态parent
和parent.child
,以及一个可激活状态parent.child.grand
。
我希望parent
在parent.child.grand
执行其解析之前承诺已解决。为什么?因为parent
需要来自parent.grand.child
解析的ajax请求的某些数据。
这里是gist
是否有可能顺序将父级的承诺链接到子状态而不使用控制器?
(parent
解析开始 - >完成ajax请求 - >解析承诺 - > parent.child.grand
解析启动 - >完成ajax请求 - >解决承诺)
答案 0 :(得分:17)
我已经看到了一些答案,但如果没有例子,它仍然没有完全清楚。文档说:
如果您愿意,必须将解析密钥注入子状态 在实例化之前等待promises得到解决 孩子。
以下是示例:
"aa,a,".split(",", -1)
并且您不必将resA注入子控制器。
答案 1 :(得分:6)
如果将auth
添加到孙子解析的依赖注入中,ui-router将在孙子解析之前解析它。
['authsrv', 'auth', function(authsrv, auth){}]
希望这是有道理的。