我正在使用AngularJS进行简单的SPA。
此应用程序包含<textarea>
,默认情况下显示绑定值:
<textarea>{{activeField.rawContent}}</textarea>
应该能够编辑此textarea中的内容,然后将其保存到数据库中。
我的问题是,一旦输入完成,textarea将保存此输入,之后不再显示绑定的内容,即使activeField.rawContent
已更新。
我怎么能阻止这种行为?
答案 0 :(得分:1)
将可编辑数据绑定到输入/ textarea字段时,需要使用ng-model指令。这会挂钩元素更改事件并将更改传播回模型。
在这种情况下,您可以使用以下方法实现:
<textarea ng-model="activeField.rawContent"></textarea>
答案 1 :(得分:1)
{{}}
实际上是幕后的ng-Bind
,是单向数据绑定。
ng-model
是双向数据绑定。
在您的代码中,您实际执行的操作是插入文本内容,而不是绑定数据。在角度文档中建议在这种情况下使用ng-model。尝试将其更改为:
<textarea ng-model="activeField.rawContent"></textarea>
有关详情,请查看this thread,ng-model,ng-bind