<p dir="auto">All works fine but there are errors in console, maybe I am not properly use ngSwitchDefault directive, but there is nothing about the right location of ngSwitchDefault  in docs. For example, if ngSwitchDefault must be in the same level of nesting like all ngSwitchCase or not.</p>
<div class="highlight highlight-source-ts notranslate position-relative overflow-auto" dir="auto" data-snippet-clipboard-copy-content="import { Component } from '@angular/core';

@Component({
    selector:'my-app',
    template:`
    &lt;input type=&quot;text&quot; [(ngModel)]=&quot;box&quot;/&gt;
    &lt;div [ngSwitch]=&quot;box&quot;&gt;
        &lt;div *ngFor=&quot;let j of ['1','2','3']&quot;&gt;
            &lt;div *ngSwitchCase=&quot;j&quot;&gt;Case {{j}}&lt;/div&gt;
        &lt;/div&gt;
        &lt;h2 *ngSwitchDefault&gt;Default&lt;/h2&gt;
    &lt;/div&gt;
`})
export class App {
    box:string = '1';
}"><pre class="notranslate"><span class="pl-k">import</span> <span class="pl-kos">{</span> <span class="pl-smi">Component</span> <span class="pl-kos">}</span> <span class="pl-k">from</span> <span class="pl-s">'@angular/core'</span><span class="pl-kos">;</span>

@<span class="pl-smi">Component</span><span class="pl-kos">(</span><span class="pl-kos">{</span>
    <span class="pl-c1">selector</span>:<span class="pl-s">'my-app'</span><span class="pl-kos">,</span>
    <span class="pl-c1">template</span>:<span class="pl-s">`</span>
<span class="pl-s">    &lt;input type="text" [(ngModel)]="box"/&gt;</span>
<span class="pl-s">    &lt;div [ngSwitch]="box"&gt;</span>
<span class="pl-s">        &lt;div *ngFor="let j of ['1','2','3']"&gt;</span>
<span class="pl-s">            &lt;div *ngSwitchCase="j"&gt;Case {{j}}&lt;/div&gt;</span>
<span class="pl-s">        &lt;/div&gt;</span>
<span class="pl-s">        &lt;h2 *ngSwitchDefault&gt;Default&lt;/h2&gt;</span>
<span class="pl-s">    &lt;/div&gt;</span>
<span class="pl-s">`</span><span class="pl-kos">}</span><span class="pl-kos">)</span>
<span class="pl-k">export</span> <span class="pl-k">class</span> <span class="pl-smi">App</span> <span class="pl-kos">{</span>
    <span class="pl-c1">box</span>:<span class="pl-smi">string</span> <span class="pl-c1">=</span> <span class="pl-s">'1'</span><span class="pl-kos">;</span>
<span class="pl-kos">}</span></pre></div>
<p dir="auto"><strong>I'm submitting a ...</strong><br>
[x] bug report</p>
<p dir="auto"><strong>Reproduction of the problem</strong><br>
<a href="http://plnkr.co/edit/KWEExfmHYtmKs7FpR00d?p=preview" rel="nofollow">http://plnkr.co/edit/KWEExfmHYtmKs7FpR00d?p=preview</a></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 =&gt; search github for a similar issue or PR before submitting
[ ] 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 =&gt; search github for a similar issue or PR before submitting
[ ] 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>
This issue only appears on initial view creation.<br>
If a <code class="notranslate">ngSwitchDefault</code> is surrounded by a <code class="notranslate">ngIf</code> like:</p>
<div class="highlight highlight-text-html-basic notranslate position-relative overflow-auto" dir="auto" data-snippet-clipboard-copy-content="&lt;div [ngSwitch]=&quot;switchVar&quot;&gt;
    &lt;template [ngIf]=&quot;1&quot;&gt;
        &lt;span *ngSwitchCase=&quot;0&quot;&gt;0&lt;/span&gt;
        &lt;span *ngSwitchDefault&gt;A&lt;/span&gt;
    &lt;/template&gt;
&lt;/div&gt;"><pre class="notranslate"><span class="pl-kos">&lt;</span><span class="pl-ent">div</span> <span class="pl-c1">[ngSwitch]</span>="<span class="pl-s">switchVar</span>"<span class="pl-kos">&gt;</span>
    <span class="pl-kos">&lt;</span><span class="pl-ent">template</span> <span class="pl-c1">[ngIf]</span>="<span class="pl-s">1</span>"<span class="pl-kos">&gt;</span>
        <span class="pl-kos">&lt;</span><span class="pl-ent">span</span> <span class="pl-c1">*ngSwitchCase</span>="<span class="pl-s">0</span>"<span class="pl-kos">&gt;</span>0<span class="pl-kos">&lt;/</span><span class="pl-ent">span</span><span class="pl-kos">&gt;</span>
        <span class="pl-kos">&lt;</span><span class="pl-ent">span</span> <span class="pl-c1">*ngSwitchDefault</span><span class="pl-kos">&gt;</span>A<span class="pl-kos">&lt;/</span><span class="pl-ent">span</span><span class="pl-kos">&gt;</span>
    <span class="pl-kos">&lt;/</span><span class="pl-ent">template</span><span class="pl-kos">&gt;</span>
<span class="pl-kos">&lt;/</span><span class="pl-ent">div</span><span class="pl-kos">&gt;</span></pre></div>
<p dir="auto">the <code class="notranslate">ngSwitchDefault</code> element will not be shown.</p>
<p dir="auto">If you remove the <code class="notranslate">ngIf</code> it works fine like:</p>
<div class="highlight highlight-text-html-basic notranslate position-relative overflow-auto" dir="auto" data-snippet-clipboard-copy-content="&lt;div [ngSwitch]=&quot;switchVar&quot;&gt;
    &lt;span *ngSwitchCase=&quot;0&quot;&gt;0&lt;/span&gt;
    &lt;span *ngSwitchDefault&gt;A&lt;/span&gt;
&lt;/div&gt;"><pre class="notranslate"><span class="pl-kos">&lt;</span><span class="pl-ent">div</span> <span class="pl-c1">[ngSwitch]</span>="<span class="pl-s">switchVar</span>"<span class="pl-kos">&gt;</span>
    <span class="pl-kos">&lt;</span><span class="pl-ent">span</span> <span class="pl-c1">*ngSwitchCase</span>="<span class="pl-s">0</span>"<span class="pl-kos">&gt;</span>0<span class="pl-kos">&lt;/</span><span class="pl-ent">span</span><span class="pl-kos">&gt;</span>
    <span class="pl-kos">&lt;</span><span class="pl-ent">span</span> <span class="pl-c1">*ngSwitchDefault</span><span class="pl-kos">&gt;</span>A<span class="pl-kos">&lt;/</span><span class="pl-ent">span</span><span class="pl-kos">&gt;</span>
<span class="pl-kos">&lt;/</span><span class="pl-ent">div</span><span class="pl-kos">&gt;</span></pre></div>
<p dir="auto"><strong>Expected behavior</strong><br>
It should show ngSwitchDefault on view creation, if surrounded by ngif.</p>
<p dir="auto"><strong>Reproduction of the problem</strong><br>
<a href="http://plnkr.co/edit/vy4KguXbPxnBxeMgqAWd?p=preview" rel="nofollow">http://plnkr.co/edit/vy4KguXbPxnBxeMgqAWd?p=preview</a></p>
<p dir="auto"><strong>What is the motivation / use case for changing the behavior?</strong><br>
Fine working framework</p>
<p dir="auto"><strong>Please tell us about your environment:</strong></p>
<ul dir="auto">
<li>
<p dir="auto"><strong>Angular version:</strong> 2.0.1</p>
</li>
<li>
<p dir="auto"><strong>Browser:</strong> [all]</p>

</li>
<li>
<p dir="auto"><strong>Language:</strong> [all]</p>
</li>
<li>
<p dir="auto"><strong>Node (for AoT issues):</strong> <code class="notranslate">node --version</code> =   6.6.0</p>
</li>
</ul>