Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript $timeout的行为不同_Javascript_Angularjs_Function_Timeout - Fatal编程技术网

Javascript $timeout的行为不同

Javascript $timeout的行为不同,javascript,angularjs,function,timeout,Javascript,Angularjs,Function,Timeout,下面是我正在使用的代码。我正在尝试显示此指令标记下的html元素,以在4秒后显示。当页面第一次加载时,它会延迟指定的html元素,但是当我导航到另一个页面并返回到同一个页面时,延迟的元素会立即显示出来 Utils.directive('ieUtilsError', function() { var directive = {}; directive.link = function(scope, element, attrs) { element.attr("s

下面是我正在使用的代码。我正在尝试显示此指令标记下的html元素,以在4秒后显示。当页面第一次加载时,它会延迟指定的html元素,但是当我导航到另一个页面并返回到同一个页面时,延迟的元素会立即显示出来

   Utils.directive('ieUtilsError', function() {
     var directive = {};
     directive.link = function(scope, element, attrs) {
     element.attr("style","display:none") 

      function show() {
      element.attr("style","display:inline")
    }

      $timeout(function() {
      show();
    }, 4000);
  }
});

当您按下后退按钮时,该页面不会重新加载,它将保留旧页面,这就是您的超时现在工作的原因

在浏览网页时更好地使用路由,如果您按“后退”按钮,它将帮助您重新加载网页

function myController($route, $rootScope)
{ $rootScope.$on('$rou‌​teUpdate', function() { if (/*shouldReload*/) { 
$route.reload(); } } }

当您按下后退按钮时,该页面不会重新加载,它将保留旧页面,这就是您的超时现在工作的原因

在浏览网页时更好地使用路由,如果您按“后退”按钮,它将帮助您重新加载网页

function myController($route, $rootScope)
{ $rootScope.$on('$rou‌​teUpdate', function() { if (/*shouldReload*/) { 
$route.reload(); } } }

请验证该指令是否已启动两次。这可能会奏效。当你回到同一个页面,第二次启动超时将被触发。请告诉我如何做,因为我是一个新手!在$timeout函数上放置一个断点,单击另一页,重定向回前一页,然后查看调试器是否将您带到断点,如果调试器将您带到断点,则意味着每次进入该页时,超时函数都在运行。请验证该指令是否已启动两次。这可能会奏效。当你回到同一个页面,第二次启动超时将被触发。请告诉我如何做,因为我是一个新手!在$timeout函数上放置一个断点,单击另一个页面,重定向回前面的页面,然后查看调试器是否将您带到断点,如果调试器将您带到断点,则意味着每次进入该页面时,都会运行timeout函数。我尝试使用它,结果导致性能问题。我的仪表板需要花费大量的时间来加载,如果我把它添加到路由中,你知道如何处理性能问题吗?在这种情况下,你需要最大限度地优化你的代码。我不认为这是路线的问题。是的,我试过使用它,结果导致性能问题。我的仪表板需要花费大量的时间来加载,如果我把它添加到路由中,你知道如何处理性能问题吗?在这种情况下,你需要最大限度地优化你的代码。我认为这不是路线的问题。