$setPristine() la méthode Angulaire 1.2.1 ne semble pas fonctionner comme prévu

Je suis en train d'essayer de réinitialiser une zone de texte à l'aide de la $setPristine fonction dans AngularJS, toutefois, il ne semble pas entraîner le comportement souhaité.

Mon formulaire ressemble à ceci:

<form name="addInviteForm" ng-controller="InviteCtrl" ng-submit="sendInvitation(userEmail)">

      Pristine? {{addInviteForm.$pristine}}

      <!-- email input -->
      <div>
        <input type="email" name="email" ng-model="userEmail" placeholder="Enter email here"  class="line-item-input see" required>
        <span class="error" ng-show="addInviteForm.email.$error.email" style="color:red">Invalid Email</span>
      </div>

      <!-- submit button -->
      <input type="submit" name="send" class="btn btn-success center" value="Send Invitation">
</form>

Et le code correspondant dans mon controller:

$scope.sendInvitation = function(userEmail) {

        //do some work here ...

        //hmm, this doesn't seem to work ...
        $scope.addInviteForm.$setPristine();
    };

Si la forme montre que $pristine est fixé à true en fonction de la forme de l'entrée, puis mis à false lors de la saisie de données dans la zone de texte, après la soumission du formulaire, il montrent, en effet, que $pristine est définie sur true .... et pourtant, la valeur dans la zone de texte reste tel qu'il était avant de le soumettre bouton a été pressé.

Ce qui me manque ici?

OriginalL'auteur dtg | 2013-11-15