Próbuję zezwolić użytkownikowi na edycję listy elementów za pomocą ngRepeat
i ngModel
. ( Zobacz to skrzypce .) Jednak oba podejścia, które wypróbowałem, prowadziły do dziwacznego zachowania: jedno nie aktualizuje modelu, a drugie zaciera formularz przy każdym keydown.
Czy ja tu robię coś złego? Czy to nie jest obsługiwany przypadek użycia?
Oto kod ze skrzypiec, skopiowany dla wygody:
<html ng-app>
<head>
<link href="//netdna.bootstrapcdn.com/twitter-bootstrap/2.2.1/css/bootstrap-combined.min.css" rel="stylesheet">
</head>
<body ng-init="names = ['Sam', 'Harry', 'Sally']">
<h1>Fun with Fields and ngModel</h1>
<p>names: {{names}}</p>
<h3>Binding to each element directly:</h3>
<div ng-repeat="name in names">
Value: {{name}}
<input ng-model="name">
</div>
<p class="muted">The binding does not appear to be working: the value in the model is not changed.</p>
<h3>Indexing into the array:</h3>
<div ng-repeat="name in names">
Value: {{names[$index]}}
<input ng-model="names[$index]">
</div>
<p class="muted">Type one character, and the input field loses focus. However, the binding appears to be working correctly.</p>
</body>
</html>
Wcześniejsze