当Angular JS中存在URL params时页面加载的方法调用无效

时间:2016-04-08 19:04:03

标签: angularjs angularjs-scope angular-controller

我有以下要求:

读取URL参数,在页面上加载2个下拉列表,并使用URL参数中的值预先填充它们。然后使用下拉值调用方法来加载网格。

以下是我到目前为止所做的事情:

在控制器上我使用$ location.search()检查params,如果它们存在,则调用一些方法。我把这个代码放在控制器的末尾。但是当调用控制器内部的方法时,REST调用不会通过,而是在总控制器负载发生后调用完成。

感谢任何帮助!

示例场景:

 function abc(){/*some code*/}
 function xyz(){/*some code*/}
 function abd(){/*some code*/}
 if(typeof $location.search().paramaName !=undefined){
  /*Read URL params. preselect the current drop down by calling abc,xyz.use the values to call abd() which makes a REST API call to load the data on the page. */

 }

1 个答案:

答案 0 :(得分:1)

您可能忽略了这些其他调用是异步的。

您可以在返回的promise对象的then()方法中包含对这些函数的调用;这将在异步调用完成后执行。

更多关于这里的承诺 -
Angular Promises
Promises Explained