I have an ng-repeat to iterate over form fields.
The problem is, if I have an invalid form I don't get any feedback. I don't see the span, nor do I see has-error get applied to the div.
I must be missing something simple, can anyone see what it is?
Here's the ng-repeat code:
<div ng-repeat="i in items">
    <ng-form novalidate class="user-form" name="userForm">
        <div class="form-group has-feedback" ng-class="{'has-error':userForm.userInput.$invalid}">
            <label class="control-label">{[{ i.item }]}</label>
            <input-field item="i"></input-field>
            <span ng-show="userForm.userInput.$invalid">TEST</span>
        </div>
    </ng-form>
</div>
Which generates an entry like this:
    <div ng-repeat="i in items">
        <ng-form novalidate="" class="user-form" name="userForm">
            <div class="form-group has-feedback" ng-class="{'has-error':userForm.userInput.$invalid}">
                <label class="control-label">Username</label>
                <input name="userInput" class="form-control" type="text" ng-model="item.answer" placeholder="Username" required>
                <span ng-show="userForm.userInput.$invalid" class="ng-hide">TEST</span>
            </div>
        </ng-form>
    </div>
