Witam. Mam problem z dynamicznie dodawanym ng-messages
<!DOCTYPE html>
<link type="text/css" rel="stylesheet" href="css/bootstrap.css" /> <div ng-controller="AppCtrl" class="container"> <div class="panel panel-primary"> <div class="panel-heading"> <span class="glyphicon glyphicon-leaf"></span> Inputs
<form id="myForm" class="form-horizontal" name="myForm"> <div class="form-group" ng-repeat="(key, input) in inputs"> <label for="myInput{{key}}" class="col-sm-4 control-label">Input {{key}}
</label> <input type="email" id="myInput{{key}}" class="form-control" ng-model="input.name" name="myInput{{key}}" required />
<div ng-messages="myForm.myInput{{key}}.$error"> <div ng-message="required">This field is required.
</div> <div ng-message="email">This email is required.
</div> <div class="panel-footer clearfix"> <button type="button" class="btn btn-success pull-right" ng-click="addInput()"> <span class="glyphicon glyphicon-plus"></span> Add input
<script type="text/javascript" src="angular-route.js"></script> <script type="text/javascript" src="angular-resource.js"></script> <script type="text/javascript" src="angular-messages.js"></script> <script type="text/javascript"> angular.module('app', ['ngMessages']);
angular.module('app').controller('AppCtrl', function($scope) {
$scope.inputs = [{
id: 1,
name: 'example'
}, {
id: 2,
name: 'test'
}, {
id: 3,
name: 'custom'
}];
$scope.addInput = function() {
$scope.inputs.push({
id: 0,
name: ''
});
};
});
Problem występuje we fragmencie <div ng-messages="myForm.myInput{{key}}.$error"> w taki sposób nie można się odwołać do $error, choć obiekt myForm.myInput{{key}} istnieje, bo sprawdzałem w console.log.
Co powinno być w ng-messages ?