首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在角初始化结束时执行代码和ngCloak显示

在角初始化结束时执行代码和ngCloak显示
EN

Stack Overflow用户
提问于 2014-07-18 14:50:09
回答 2查看 1.7K关注 0票数 2

我有一个用角写的带有ngCloak指令的网页。它用pym.js加载在动态大小的iframe中。

问题是,除非我调整浏览器的大小或触发一个调整大小的事件,或者在页面加载后调用pymChild.sendHeight(),否则页面就不会出现。

不过,我没有看到任何与ngCloak相关的事件。是否有“页面呈现,控制器初始化”的角度事件?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-07-18 14:56:22

有$timeout服务:

代码语言:javascript
运行
复制
$timeout(function() {
   // this code will execute after the render phase
});
票数 2
EN

Stack Overflow用户

发布于 2014-07-18 16:30:56

您可以编写一个指令,在postLink函数中执行回调,因为postLink将在$compile生命周期中最后调用。

代码语言:javascript
运行
复制
.directive('onInitialized', function ($parse) {
  return {
    restrict: 'A',
    priority: 1000, // to ensure that the postLink run last.
    link: function postLink(scope, element, attrs) {
      $parse(attrs.onInitialized)(scope);
    }
  }
});

并将其放在您想知道的元素中,例如:

代码语言:javascript
运行
复制
<body ng-controller="MainCtrl" on-initialized="hello()">

MainCtrl控制器中:

代码语言:javascript
运行
复制
app.controller('MainCtrl', function($scope) {
  $scope.name = 'World';

  $scope.hello = function () {
    console.log('Hello ' + $scope.name);
  };
})

对于template-ready,我指的是除了:带有templateUrl的指令和模板尚未在$templateCache中准备好的所有指令,因为它们将被异步编译。

希望这能有所帮助。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24827873

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档