title: AngularJS input $valid is always false with no error
body: <p>I'm trying to apply an AngularJs validation in my project. So the following code was written:</p>
  
  <pre><code> &lt;form name="recipeTitle"&gt;
     &lt;input ng-if="edit" required type="text" ng-model="recipe.name" name="name"/&gt;
   &lt;/form&gt;
   &lt;span&gt;valid = {ng recipeTitle.name.$valid ng}&lt;/span&gt;
   &lt;span&gt;errors = {ng recipeTitle.name.$error ng}&lt;/span&gt;
  </code></pre>
  
  <p>If no value was entered in input, that returns:</p>
  
  <pre><code>valid = false
  errors = {"required":true}
  </code></pre>
  
  <p>When any value appears in input field, validation returns:</p>
  
  <pre><code>valid = false 
  errors = {}
  </code></pre>
  
  <p>And I have no idea, how to make a $valid property become true. Appreciate any help, thanks.</p>