当我的 Angular 应用程序第一次加载时,我需要对一些相当大的数据提出几个请求。然后在控制器和服务中使用此数据来确定如何显示页面。我收到各种 JavaScript 错误,因为控制器和服务在请求返回之前尝试访问这些数据。
我知道在 HTML 页面中,您可以绑定到这个异步数据,当请求返回时,Angular 会为您填充它。但是,基于这些数据,我的控制器和服务中发生了一些非常复杂的逻辑。所以,我想我有两个问题。
- 无论如何,有没有办法在控制器和服务中处理异步数据?
- 有没有办法防止 Angular 在数据返回之前尝试渲染页面?这基本上使数据请求同步,我可以接受。这只会在初始的完整 HTML 页面加载时发生。
我在 jsFiddle 上的尝试可以在这里找到:http: //jsfiddle.net/sES9T/