在AngularJS中解决解析之前已加载控制器

亚当

加载控制器之前,我的AngularJS解析未完成。

背景:假设我有一个“我的个人资料”页面被请求(用户加载website.com/user)。我想让角度拦截请求并从服务器请求适当的数据。

服务器将根据用户是否已登录/活动/等进行不同的答复。我希望在加载模板之前以及启动适当的控制器之前从服务器获取数据。到目前为止,还没有。

App.js代码:

.when('/user',
  {
    templateUrl:'/templates/user',
    controller: 'my_profile',
    resolve: {
        some_cute_function_name: function($timeout){
            $timeout(function(){
                console.log('here123');
            },5)
        }
   }

同时,控制器代码:

            console.log('about to update scope');

事实证明,控制器是在解析完成之前启动的。我知道这一点是因为$ timeout结束之前的秒数越长,我越有可能看到以下内容:

about to update scope
here123

而不是相反。

有什么方法可以确保在启动控制器之前解决该问题?

非常感激!

我是Lesh

您的解析器需要返回承诺:

  .when('/user',
  {
    templateUrl:'/templates/user',
    controller: 'my_profile',
    resolve: {
        some_cute_function_name: function($timeout){
            return $timeout(function(){
                console.log('here123');
                return { some: 'data' };
            },5);
        }
   }

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

强制AngularJS服务在加载控制器之前返回数据

动态加载AngularJS控制器

重新加载AngularJS控制器

上传前在angularjs控制器中解析文件

在Sails控制器中操作之前

注册延迟加载的控制器angularjs

在使用angularjs更新控制器中的新数据之前,如何销毁Morris图表数据?

控制器已加载到DOM中,但未加载视图并且无法找到控制器-使用jade(pugjs)的oclazyload

在加载视图控制器之前运行tabBarItem代码

在加载视图控制器之前运行tabBarItem代码

尝试检查视图控制器是否已加载,然后将其显示在容器中(UISegmentedController)

AngularJS:解析不是在RouteProvider中,而是在控制器中?

从书签加载时AngularJS中的控制器加载顺序

在angularjs中重新加载外部控制器

将jsonp加载到多个AngularJS控制器中

控制器之前的AngularJS指令事件

在angularjs中动态加载控制器+工厂

加载控制器之前无法解决

父控制器中已加载的FXML的访问元素

AngularJS-在加载任何控制器之前加载数据

如何在加载控制器之前实例化变量

angularjs奇怪的错误加载控制器

AngularJS控制器无法加载数据

angularjs控制器未加载/调用

angularjs 1.5中组件控制器中的访问解析

控制器在加载数据之前抛出错误,即使已解决

无法在 AngularJS 中的 $routeProvider 中加载控制器

AngularJS - 如何在状态解析函数中获取状态名称以加载控制器文件?

angularjs 在控制器启动之前解决承诺