我定义了一个范围变量$scope.letter_content。加载视图时,我从数据库加载字符串并将其设置为$scope.letter_content。然后,我在正在使用的texteditor(Froala)上进行填充。
$scope.letter_content
下面是该视图的代码:
{{letter_content}} <div ng-if="formData['page_number'] == 1 "> {{letter_content}} <textarea id="froala-sample-2" froala="froalaOptions" ng-model="letter_content"></textarea> </div>
所以基本上我将letter_contenttexteditor 设置为ng- model。因此,当我对文本编辑器进行更改时,它会修改值$scope.letter_content。
letter_content
我发现这很奇怪的一件事是,当我在texteditor中修改文本时,它{{letter_content}}在div内发生了变化。但是,它不会{{letter_content}}在div之外更新。
{{letter_content}}
编辑完文本编辑器中的文本后,我发送发送放置请求以使用来更新数据库中的值$scope.letter_content。但是,它最终{{letter_content}}在div外部发送,最终导致不更新内容。
为什么发生这种奇怪的事情?
实际上,已经在更多链接中对此进行了讨论。
不要使用原始类型变量。而不是在范围内使用对象。
例如,不要使用like $scope.primitiveVariale代替$scope.object={primitiveVariale:null}
$scope.primitiveVariale
$scope.object={primitiveVariale:null}
因此,在这样的视图使用中,object.primitiveVariale这将反映在所有视图中。请查看以下链接。
object.primitiveVariale
https://github.com/angular/angular.js/wiki/Understanding- Scopes