title: AngularJS $timeout service
body: <p>I have to have something visible for 3-4 seconds. I am trying to use $timeout for achieving that. Here's what I got so far:</p>
  
  <pre><code>$timeout(function() {
    debugger;
    $scope.$on(broadcastService.topErrorBar.show,
    function(event, message) {
      $scope.rootElement.addClass('is-visible');
      $scope.isVisible = true;
      $scope.message = message;
    });
  }, 3000);
  
  $timeout.cancel(function() {
      $scope.close();
  });
  
  $scope.close = function() {
    $scope.rootElement.removeClass('is-visible');
    $scope.isVisible = false;
  };
  </code></pre>
  
  <p>This is not working and I'm not able to resolve the issue. What am I doing wrong? Should I use a timeout in this case.</p>