7
我有2個州中的CoffeeScript的方式...有沒有解決之前,任何AngularUI子解決了一個承諾路由器
stateProvider.state 'test',
...
resolve:
user: (LongRunning)->
LongRunning.authenticate().then ->
console.log("We are authenticated!")
stateProvider.state 'test.child',
...
resolve:
other: (AfterAuth)->
AfterAuth.soSomethingWithAuth().then ->
console.log("We are done!")
當然是因爲孩子的決心之前就此拉開序幕不起作用父母的auth方法已解決。這意味着第二個函數將不會被認證,並導致整個狀態失敗。
現在它不一定需要成爲狀態路徑的一部分,但需要在調用析取函數時完全完成。
我怎樣才能確保在調用子方法之前父函數完全解析?
壞(?)解決方案
的一個答案我已經能夠拿出是使用手動引導過程。然而,這是乏味的,因爲我需要重新連線我的所有服務。無論如何,我可以在Angular中做到這一點嗎?
我會補充說,你可以使用從父路由中使用所有解析參數的子路由依賴注入。在你的例子中,它有同樣的決心 - 但它不一定是那樣。 – hilnius
正確,但默認情況下,在移動@hilnius之前,父解析沒有完成。所以父母中的孩子在被調用之前不能保證被解決。如果這可以確保是這種情況(添加依賴變量)適用於兒童,這應該是確定的。 – Jackie
如果有30個步驟,我必須將其添加到每一步?有沒有辦法說'在firstStep之後運行任何從此繼承的步驟' – Jackie