我有一个待办事项列表项目,其中每个条目都是输入(内联修改)。
<div *ngFor="let t of todos;" class="list-item">
<span class="list-item__checkbox"> </span>
<textarea class="todo-item__textarea"
(input)="onTodoKeyEvent($event, t)"
(keydown)="onTodoKeyEvent($event, t)"
([ngModel])="t.text"
></textarea>
{{t.text}}
</div>
onTodoKeyEvent
方法调用update函数,以更新数组中的todo数据。
onTodoKeyEvent(event, todo) {
this.updateTodo({
id: todo.id,
text: event.target.value + 'additional text'
});
}
我使用getter从服务中获取控制权:
get todos(): Todo[] {
return this.todoDataService.get();
}
更新功能:
update(data: Todo) {
let todo = this.todos[data.id];
Object.assign(todo, data);
}
问题是我可以在todos
数组中查看新数据,在{{t.text}}
视图中查看,但textarea中的值,模型值与输入的相同,所以感觉像单向绑定。
为什么,我该如何解决?谢谢。
答案 0 :(得分:3)