title: angularJS $timeout executing method instantly
body: <p>I am using ionic framework and <a href="https://github.com/leecrossley/cordova-plugin-shake" rel="nofollow">cordova-plugin-shake</a> plugin to detect device shaking for one of my Android application, which is working fine. But the problem is after a shake I would like to disable this shaking detection for 30 second, for which I am trying to use <code>$timeout</code> like this:</p>
  
  <pre><code>$timeout($scope.watchForShake(), 30000);
  </code></pre>
  
  <p>But somehow for <code>$timeout</code>, no matter what the delay value is, <code>$scope.watchForShake()</code> is executed instantly.</p>
  
  <p>I have also tried using <code>setTimeout</code> but the result is still the same.</p>