問題タブ [angularjs]
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.
angularjs - $rootScopeにアクセスできません
次のファイルは「機能します」(エラーをスローしないという意味で):
でも、これ
エラーが発生します:
エラー:不明なプロバイダー:modx
ソースファイルからの$ rootScope:http: //code.angularjs.org/angular-1.0.0rc7.js
行:2491
WTF?
javascript - レガシ コードから AngularJS を呼び出す
AngularJS を使用して、従来の Flex アプリケーションとやり取りする HTML コントロールを構築しています。Flex アプリからのすべてのコールバックは、DOM ウィンドウにアタッチする必要があります。
たとえば(AS3で)
電話します
JS のサイズ変更関数内から、コントローラーが聞くことができるイベントをディスパッチしたいと思います。サービスの作成が進むべき道のようです。AngularJS の外部からサービスを更新できますか? コントローラーはサービスからのイベントをリッスンできますか? ある実験 (フィドルをクリック)では、サービスにアクセスできるように見えますが、サービスのデータを更新してもビューに反映されません (この例では、<option>
に追加する必要があります<select>
)。
ありがとう!
ajax - angularjsからdjangoにデータを送信する
Angularjs とその $http モジュールを使用して POST AJAX リクエストを Django サーバーに送信しています。次に例を示します。
問題は、Django で得られるものです。何を送信しても、データは常にQueryDict
オブジェクトのキーであり、その値は常に空のリストです。
理由はわかりません。私は何が欠けていますか?
デフォルトのミドルウェアのみを使用して、ほぼデフォルトで作成された Django アプリケーションを使用しています。ビューのみを作成し、url 構成で url を設定しました。Django のバージョンは 1.3 です。そして、Djangoを満たすためにcsrfトークンを含むヘッダーを常に送信するようにAngularの$ httpモジュールを構成しました。
angularjs - ディレクティブのトランスクルージョンされた要素を観察するにはどうすればよいですか?
ページネーション ディレクティブを記述しようとしていますが、そのためには、トランスクルージョンされている要素の数を知る必要があるため、HTML は次のようになります。
(これは単純なケースです。トランスクルージョンされるコードは、任意に複雑になる可能性があります。)
ディレクティブは何かを監視する必要があるため、ページ数を再計算できます。
EDIT申し訳ありませんが、コードはコードとして呼び出されませんでした。上記のコードで、リスト内の名前をたとえば 10 ページのページに分割し、次へ/前へのボタンをいくつか追加します。
問題はlink
、ディレクティブの関数が呼び出されたときに、div がまだ展開されていないことです。私はDOMへの変更を延期するだけでそれを「修正」しましたが、それは初めてしか機能しません。$scope.searchResults (またはトランスクルードされたコードによって観察されるその他のもの) が変更された場合、DOM を再調整する必要があります。それがいつなのかを知りたいだけです。
unit-testing - AngularJS コントローラー単体テスト - サービスの注入
AngularJS 単体テストに関する簡単な質問です。シンプルなサービスを使用するコントローラーがあります(angular-seed プロジェクトから適応)
services.js:
controllers.js:
これは私のアプリでうまく機能します。ただし、ユニットテストフレームワークでコントローラーを作成するのに問題があります。「バージョン」サービスを注入する (またはインスタンスを作成する) 方法と、それを $controller() ファクトリに渡す方法がわかりません。必要最小限の仕様は次のとおりです。
controllerSpec.js :
テスト ハーネスを実行すると: >test.sh
... 失敗しました (3.00 ミリ秒): エラー: エラー: 不明なプロバイダー: versionProvider <- バージョン エラー: 不明なプロバイダー: versionProvider <- バージョン
$injector/$provider と module() でさまざまなことを試しましたが、役に立ちませんでした。答えは簡単だと思いますが、見えません。
javascript - AngularJS - Rails 3.2.3 での $http POST
AngularJS 1.0.0rc8 を使用して、Crud で簡単な連絡先管理アプリを構築しています。
現在存在する連絡先のリストを取得することは問題ありませんが、新しい連絡先をサーバーに保存しようとすると、新しい行が作成されます - 正しい id、created_at、および updated_at 値で完了します - ただし、残りのモデル データは無視されます.
ここに私が何を意味するかを示すスクリーンショットがあります:
ご覧のとおり、番号 4 と 5 には ID が指定されていますが、first_name、last_name、および phone_num はデータベースに保存されていません。
オブジェクトを処理する Controller 内で$scope.addContact関数を使用しています。
連絡先リスト コントローラーのコード全体を次に示します。
new-contact.html パーシャルで [保存] をクリックした後、オブジェクトがコンソールに記録されます。その内容を調べると、十分な値が収集されていることを確認できます。Jimi Hendrix がそこにいることに注意してください。
new-contact.html テンプレートに表示されるフォームは次のとおりです。
addContact ()関数は、フォームが JQuery で送信された後に起動されます。
(ng-model属性を正しく使用していない可能性があることがわかりました。)
これでどこが間違っているのかについてのアイデアはありますか? または、この設計をよりうまく実装する方法についてのアイデアはありますか?
ありがとう。
以下の更新:
これが私の更新されたコントローラーコード全体です-Sathishの助けを借りて:
連絡先の不明なプロバイダーというエラーが表示されます。ここにエラーのスクリーンショットがあります
OK、メインの App ファイルにngResourceを提供することで、そのエラーを修正できました。外観は次のとおりです。
新しいエラーが表示されます: 警告: CSRF トークンの信頼性を確認できません
よし、API コントローラーにコールバックを追加することで、この問題も解決できました。 Rails は、RestKit POST から「警告: CSRF トークンの信頼性を確認できません」と表示します
今、私は元の問題に戻りました。create メソッドが呼び出されると、新しい行がデータベースに保存されますが、モデル データは保存されません。
素晴らしい...ついにこれが機能するようになりました。
問題は$scope.addContact関数でした。テンプレートに存在する「newFirstName」および「newLastName」と呼ばれるng-modelバインディングの代わりに、入力の「名前」を使用していました。
更新された関数は次のようになります。
javascript - 外部でデータを利用できるようにする方法
ここで確認してください: http://jsfiddle.net/9VaW2/1/
jData
外で利用できるようにしたい
しかし、私がこれを行うとき:
それは私にこのエラーを与えます
ReferenceError: jData が定義されていません
編集 更新フィドル
** 同期呼び出しを行うための解決策を見つけたと思います..async : false
。それが機能します。データが戻ってくるよりもページの読み込みが速かったと思います....誰かがより良い解決策を持っているのだろうか**
javascript - ネストされた AngularJS 環境でマウス ディレクティブの動作がおかしい
AngularJS でネストされたツリー構造を実装しようとしていました。これは、すべてが同じコントローラー タイプによって管理されるノードで構成されます。ここで例を見つけることができます: http://jsfiddle.net/Yfmdy/2/
私の問題は、子ノードが削除され、その親の「子」配列が変更されるたびに、すべての親が ng-mouseenter および ng-mouseleave の動作を失うことです。
誰かがそれについて何をすべきか考えていますか? 私は何かを逃しましたか?
javascript - AngularJS-ng-modelが使用されている場合、入力テキストボックスのValue属性は無視されますか?
単純な入力テキストボックスの値を以下の「bob」のようなものに設定した場合にAngularJSを使用します。ng-model
属性が追加された場合、値は表示されません。
この入力をデフォルトにして何かを維持するための簡単な回避策を知っている人はいng-model
ますか?デフォルト値でを使用しようとしましたng-bind
が、それも機能しないようです。