Adding Default Value To Text Input Angular 2
<p><strong>Background</strong></p>

<p>I have a form with an input field containing the user's email address. I am using interpolation to add the email to the <code>placeholder</code> field.</p>

<p><strong>Problem</strong></p>

<p>I do not want the user to be able to change the email address in this field. I only want them to be able to see it. But I do want it to post with the form. </p>

<p><strong>Question</strong></p>

<p>I keep trying different ways and no matter what the <code>form</code> does not <code>post</code> the email. How can I <code>bind</code> it so that it will actually <code>post</code> the email address when the form is <code>submitted</code>?</p>

<p><strong>Examples</strong></p>

<p>I tried with <code>readonly</code>. That way they would not be able to change it.</p>

<pre><code> &lt;input type="text" class="form-control" id="email" [(ngModel)]="personal.email" name="email" #email="ngModel" placeholder="{{auth.user.email}}" value="{{auth.user.email}}" readonly&gt;
</code></pre>

<p>I tried without <code>readonly</code> just to see if it would work if I do not add any restriction flags.</p>

<pre><code> &lt;input type="text" class="form-control" id="email" [(ngModel)]="personal.email" name="email" #email="ngModel" placeholder="{{auth.user.email}}" value="{{auth.user.email}}"&gt;
</code></pre>

<p>I know the email is accessible because I am adding it to the placeholder field and it shows up in the form. It just wont post. </p>