javascript - 仅在通过 $http 加载数据后, Angular 应用程序中的初始化指令

标签 javascript angularjs

我有一个基本的 Angular 应用程序,我需要执行以下操作:

  1. 应用 Controller 已初始化
  2. 一旦对服务器的调用完成,$http 调用就会发生并返回一个已解决的 promise 。结果存储在范围变量中。 (这可能发生在页面上的任何其他操作之前)
  3. 指令使用上一步范围变量中的数据进行初始化。

所讨论的指令包装了一个非 Angular Jquery 库 (galleria.io),并且仅在获取数据后对其进行初始化至关重要。否则,必须首先使用一些虚拟数据对其进行初始化,并向查看者显示一些屏幕“垃圾”。

最佳答案

您应该将 HTTP 调用添加到工厂,公开该函数,并在到该 View / Controller 的路由中调用该函数。这将确保在加载 View 或 Controller 之前解决 promise ,并且其结果将被注入(inject)到 Controller 中。

请参阅这篇文章的示例:https://stackoverflow.com/a/27239390/1913396

关于javascript - 仅在通过 $http 加载数据后, Angular 应用程序中的初始化指令,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33584278/

相关文章:

javascript - 单引号和双引号有什么区别?

html - AngularJs 以表格格式打印 JSON 对象(自定义格式 - 每行 4 个对象)

javascript - 如何从 ionic 弹出窗口中删除不需要的空间

javascript - 使用 ng-class-even/odd 添加颜色

javascript - 为什么ngModel.$setViewValue没有效果?

javascript - 在 Javascript 中捕获 setInterval() 上的鼠标位置

javascript - 使用 HTMLEncode 来显示上传的文本是否足够?

angularjs - 使用 Jasmine 测试 AngularJS

javascript - 如何使用 jQuery 查找特定文本并设置它们的样式

javascript - javascript中如何实现调用一个函数自动调用另一个函数