問題タブ [angularjs-digest]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
0 に答える
75 参照

javascript - Angularjs, Ivh-tree : Angularjs ダイジェスト サイクル

最終的にivh-treeviewを形成する2つの配列を切り替えていますが、かなりの時間がかかります。両方の配列は 1000 個の要素が異なります。json への再構成要求によってページが読み込まれると、最初にデータを配列に読み込みます。[Profile] -> [Flare Chart]を使用して変更データ リクエストをプロファイリングした後
、$scope.apply()、$scope、および $digest のサイクルが繰り返されていることがわかります。この時間を短縮するにはどうすればよいですか? または、暗黙のデータ依存関係がないことが確実にわかっているので、apply()/digest() のこのサイクルをスキップできますか?

以下は、3 ミリ秒から 8 ミリ秒の遅延があるフレア チャート イメージへのリンクです。

ここに画像の説明を入力

0 投票する
1 に答える
779 参照

angularjs - AngularJS: ng-repeat で $rootscope.infdig エラーが発生する (無限ループ)

まず第一に..長いコードで申し訳ありませんが、明確にしたい. (私の質問は一番下にあります)

1 人の顧客のすべての連絡先を取得しようとしています。まず、HTML コードでわかるように、getContacts(customer.id)内部で関数を呼び出そうとしました。ng-repeat directiveしかし、これにより無限ループ ( $rootscope.infdig ) が発生しました。

だから私は関数をに移動しましたng-init directiveが、今はこのエラーが発生しています:

予期しないトークン <

index.html

CustomerService.js

これは、Mysql データベースから (PHP ファイル経由で) データを取得する JavaScript ファイルです。

CustomerController.js

関数の戻り値を console.log しようとしましたgetContactsByCustomersId()が、次のように表示されます: d {$$state: Object}

私の質問: '関数の返されたデータにアクセスgetContactsByCustomersId()して、html コードで使用するにはどうすればよいですか???

何かが十分に明確でない場合は、私に尋ねてください! 前もって感謝します !!

0 投票する
1 に答える
619 参照

javascript - 拘束力のない角度スコープ

次のようなテンプレートがあります。

コントローラーでは、次のようになります。

バインディングはコールバックでは機能しません。なんでそうなの?

0 投票する
2 に答える
75 参照

javascript - $scope.$apply() 呼び出しは、このシナリオで保証されていますか?

AngularJS (および率直に言って JavaScript) は初めてですが、私が集めたものから、 $scope.$apply() への明示的な呼び出しは、angular のレーダーの外で変更が発生した場合にのみ必要です。以下のコード (この plunkerから貼り付けたもの) は、呼び出しが必要な場合ではないと思いますが、それが機能させる唯一の方法です。私が取るべき別のアプローチはありますか?

index.html:

script.js:

0 投票する
1 に答える
116 参照

jquery - div クリック イベントを角度フィルター チェックボックスにリンクする

このjsfiddle(別の質問から)のものに基づいて、角度のあるチェックボックスフィルターを使用しています。http://jsfiddle.net/rzgWr/502/

デフォルトのチェックボックスを使用したくないので、次のように jquery を使用して 2 つの div をチェックボックスに「リンク」しました。

私のjqueryはhtmlで正しく動作し、ボックスをチェックしますが、Angularモデルは変更を検出せず、フィルタリングされた出力を更新するためにそれ自体を「リフレッシュ」(ダイジェスト?)できません(コンテキストについてはjsfiddleを参照してください)。

angularモデルがクリックを検出するか、チェックボックスのステータスでjqueryによる変更を検出するようにするには、何を追加する必要がありますか? jquery ファイルまたは angular コントローラーに変更を書き込みますか?

jquery と angular を使用するのは面倒だと思います。角度のみのオプションがあれば教えてください。