setViewValue в директиве при вводе не обновляет фактическое видимое значение ввода

Я боролся с этим почти два дня. Я надеюсь, что вы, ребята, можете мне помочь.

Резюме:
У меня проблемы с установкой значения представления некоторых полей ввода программно.
У меня есть форма со входами, значения которой сохраняются до удаления формы (возможно несколько элементов и несколько форм, пользователь может закрыть форму и открыть ее позже). При повторном открытии формы я хочу восстановить предыдущие значения представления (основная причина - вернуть также недействительные значения представления, которые не были сохранены в модели). Это не работает

Если я вызываю ctrl. $ SetViewValue (previousValue), я получаю обновленную модель (заметно) (если она действительна), значения представления formControl (при отладке в консоли) тоже меняются, но я не получаю их фактически отображаемыми в поля ввода. Я не понимаю почему :(

Я уменьшил проблему до этой скрипки:
http://jsfiddle.net/g0mjk750/1/

Javascript

var app = angular.module('App', [])

    function Controller($scope) {
        $scope.form = {
            userContent: 'initial content'
        }
    }
app.controller('Controller', Controller);
app.directive('resetOnBlur', function () {
    return {
        restrict: 'A',
        require: 'ngModel',
        link: function (scope, element, attrs, ngModel) {
            element.bind('blur', function () {
                console.log(ngModel);
                scope.$apply(setAnotherValue);
            });
            function setAnotherValue() {
                ngModel.$setViewValue("I'm a new value of the model. I've been set using the setViewValue method");
            }
        }
    };
});

Html

<form name="myForm" ng-app="App" ng-controller="Controller" class="form">
    Text: {{form.userContent}}
    <hr />
    If you remove the text, "Required!" will be displayed.<br/>
    If you change the input value, the text will update.<br/>
    If you blur, the text will update, but the (visible) input value not.
    <hr />
    <input class="input" type="text" ng-model="form.userContent" name="userContent" reset-on-blur required></textarea>
    <span ng-show="myForm.userContent.$error.required">Required!</span>
</form>

Я надеюсь, что вы, ребята, можете объяснить мне, почему это не работает и как это исправить ...

Ответы на вопрос(2)

Ваш ответ на вопрос