input には ng-model バインディングがあります。手動入力ではこの値を変更できます。jquery input$('#dd').val('str'); の値を変更するために を使用しました。 scopeヘルプmodelは変わりません。
input
ng-model
jquery
$('#dd').val('str');
scope
model
を使用して DOM または変数の値を変更および更新する場合、追加の操作は必要ありません。angular way
angular way
リーリー
正しい方法は...ビューを手動で変更しないことです。 提案: 1. モデルを公開し、変更後に $scope.$apply() を呼び出します。さらに、さまざまな予期せぬエラーを回避するために、次のように setTimeout(function(){$scope.$apply()},0) を書くことができます。 2. いずれにせよ、このようなニーズがある場合は、何らかのイベント、ユーザー操作、または Ajax が原因である必要があります。 Ajax 操作は、Angular によって提供される $http サービスを使用できます。通常、ユーザー操作はディレクティブにカプセル化できます。
を使用して DOM または変数の値を変更および更新する場合、追加の操作は必要ありません。
ただし、angular から離脱して、angular システム内にない jquery などのコードを使用する場合は、変更を angular に通知し、angular に最新の値を取得させてページに反映させる必要があります。angular way
リーリー
正しい方法は...ビューを手動で変更しないことです。
提案:
1. モデルを公開し、変更後に $scope.$apply() を呼び出します。さらに、さまざまな予期せぬエラーを回避するために、次のように setTimeout(function(){$scope.$apply()},0) を書くことができます。
2. いずれにせよ、このようなニーズがある場合は、何らかのイベント、ユーザー操作、または Ajax が原因である必要があります。 Ajax 操作は、Angular によって提供される $http サービスを使用できます。通常、ユーザー操作はディレクティブにカプセル化できます。