通过延迟指令链接功能的执行来加快页面加载时间

时间:2014-10-28 06:56:54

标签: angularjs angularjs-directive

我的某些指令的链接功能需要相当长的时间才能执行。因此它延迟了页面加载时间。

为了加快速度,意图是在window.onload事件之后执行linkfn。

我打算采取的方法

directive('mydirective', function(){
  restrict: 'A',
  scope:{},
  link : function(scope, element, attrs) {
    var unwatcher = scope.$watch("$viewcontentloaded", function(){
       unwatcher();
      //actual link function which takes too much time to execute.
    });
  }
}   

顺便说一下,使用$ timeout(linkfn,0)并不能保证它在window.onload事件 more info之后执行。

还有其他更好的选择吗?

1 个答案:

答案 0 :(得分:0)

https://github.com/Pasvaz/bindonce结帐绑定并尝试使用模板加载模板html:而不是 templateUrl:(如果您还没有