angular.js - angular の $.post は $scope にバインドできません ($.post と $http.post の使用法の違い)
大家讲道理
大家讲道理 2017-05-15 16:52:49
0
3
544

以下のように、$scope.equipments=... セクションが $.post 内にある場合、$scope.equipments にバインドできません。なぜでしょうか。

リーリー
大家讲道理
大家讲道理

光阴似箭催人老,日月如移越少年。

全員に返信(3)
洪涛

@lee1994522 さんから指摘を受けて、$.post メソッドを使用すると、 が angular のコンテキスト から外れてしまうため、angular の $scope にバインドできないことに気付きました。 脱离了angular的上下文,所以无法绑定到angular的$scope里。

this is the point,pls.. $.post is not an Angular issue and the stuff
it wraps is not in an Angular world,so it's obviously that the
equipments outside is in Angular's world and it works as you expect

try $scope.$apply() when you call a "none Angular" issue if you wanna
refresh sth

解决办法有两个:

$.post

第一个诚如@lee1994522所说,直接在$.post的回调函数的最后加上一句$scope.$apply()

これがポイントです。お願いします。$.post は Angular の問題などではありません
ラップは Angular の世界にないので、明らかに
外部の機器は Angular の世界にあり、期待どおりに動作します

必要に応じて、「角度なし」問題を呼び出すときに $scope.$apply() を試してみてください
リフレッシュ sth

解決策は 2 つあります:

$.post

最初の方法は、@lee1994522 が言ったように、$.post コールバック関数の最後に $scope.$apply() という文を直接追加して、変更をビューに同期的にバインドします # 🎜🎜# リーリー #🎜🎜#$http.post#🎜🎜# #🎜🎜#AngularJS - $http.post が JSON の代わりにリクエスト パラメーターを送信する方法#🎜🎜# #🎜🎜# グローバル定義: #🎜🎜# リーリー #🎜🎜#次にコントローラーに次のように書きます: #🎜🎜# リーリー
いいねを押す +0
曾经蜡笔没有小新

元の投稿者の $.post の使い方がわかりません。 $http

を注入する意味は何ですか?
いいねを押す +0
给我你的怀抱

あなたの$.post不是angular的方法,所以实际上post的回调虽然执行了,但angular在视图上却不知道这件事。你可以在$.post里的赋值操作后面再跟一句$scope.$apply();、その割り当て操作が有効になります。

いいねを押す +0
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート