<p dir="auto">CanActivate hooks are currently executed in order of child -&gt; parent. This causes problems when the child route's CanActivate depends on data that is set by the parent's CanActivate. An example might be the checking of current user permissions in the child CanActivate when the current user will not be bootstrapped until the parent's CanActivate is called.</p>
<p dir="auto">Is this by design? It would seem more logical to have this perform the way OnActivate does (from parent -&gt; child).</p>
<p dir="auto"><strong>I'm submitting a ...</strong>  (check one with "x")</p>
<div class="snippet-clipboard-content notranslate position-relative overflow-auto" data-snippet-clipboard-copy-content="[x] bug report
[ ] feature request
[ ] support request =&gt; Please do not submit support request here, instead see https://github.com/angular/angular/blob/master/CONTRIBUTING.md#question"><pre class="notranslate"><code class="notranslate">[x] bug report
[ ] feature request
[ ] support request =&gt; Please do not submit support request here, instead see https://github.com/angular/angular/blob/master/CONTRIBUTING.md#question
</code></pre></div>
<p dir="auto"><strong>Current behavior</strong><br>
I have this ngFor reading data from a Firebase database:</p>
<p dir="auto"><code class="notranslate">&lt;div *ngFor="let post of myPosts | async" &gt;</code></p>
<p dir="auto"><code class="notranslate">myPosts</code> is of type <code class="notranslate">FirebaseListObservable</code></p>
<p dir="auto">Each time a new post is being pushed, all of the posts elements are being re rendered.</p>
<p dir="auto"><strong>Expected/desired behavior</strong><br>
Only the newly pushed post would render.</p>
<p dir="auto"><strong>Please tell us about your environment:</strong></p>
<ul dir="auto">
<li><strong>Angular version:</strong> 2.0.0-rc.4</li>
</ul>