問題タブ [angular-resource]

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 投票する
1 に答える
2700 参照

ruby-on-rails - angularリソースがエラーコールバック関数を呼び出さない

私は何時間もこれに取り組んできましたが、Rails バックエンドが適切なエラーを発生させたときに、Angular がエラー コールバックをトリガーしない理由がわかりません。私はAngular 1.2.0rc1を使用しています。

ドキュメントによると:

non-GET "class" actions: Resource.action([parameters], postData, [success], [error])

そして、製品の保存操作中に角度コントローラーでそれを使用しています:

リソース定義は次のとおりです。

これが私のレールコントローラーです:

重複する SKU を含む製品を保存しようとすると、Rails が 422 ステータスを返します。フロント エンドにエラー メッセージを表示したいと考えています。

angular が update 呼び出しで提供されるエラー処理関数を実行することを期待していますが、そこまで到達できません。代わりに、コンソールに次のように表示されます。

TypeError: Cannot read property 'data' of undefined役に立たないスタックトレースで:

私は何が欠けていますか?

アップデート:

どうやら、この http インターセプターが関連しているようです。このコードをコメントアウトすると、エラー関数が呼び出されます。このスニペットを他の場所からコピーし、ユーザーがログインしていないときに Rails API にヒットした場合にサインアップ ページにリダイレクトするように変更しました。干渉しているに違いありませんが、どのように修正すればよいかわかりませんそれ。

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

angularjs - AngularJS: カスタム $resource アクションが機能しない

カスタム getUsers アクションを $resource に定義しようとしていますが、オブジェクトに getUsers メソッドがないというエラーが表示されます。

と一緒に使うCustomer.getUsers({id: 'id'})

1.2.0-rc2 を使用しています。ここで何が欠けていますか?

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

javascript - angularjs $resouce メソッドのオプションのパラメーター

私の場合は、方法で定義されたangularjsの自動削除パラメーターが必要です:

私の定義:

service.save({id :3}) を呼び出すと、生成される実際の URL は次のとおりです。

指定されていないパラメータをangularjsに自動削除させるにはどうすればよいですか?

私はちょうどこのようにしたいです:

ありがとう。

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

angularjs - $resourceを使用してファイルをダウンロードし、ロード画面を表示するAngular jsの方法

ロード画面を表示するためにAngular jsを使用しています。ファイルをダウンロードするための REST サービスを除くすべての REST サービス呼び出しで機能します。ダウンロードのために $resource; を使用してサービス呼び出しを行っていないため、機能しない理由を理解しています。その代わりに、ファイルをダウンロードするために通常のアプローチを使用しているため、Angular js コードはサービス リクエストの開始/終了を制御できません。$resource を使用してこの REST サービスにアクセスしようとしましたが、このサービスからデータを取得しています。この場合、読み込み画面は正常に機能していましたが、このデータを使用してユーザーに表示し、角度を付けてダウンロードする方法がわかりません。以下は必須の詳細です。助けてください。

iframe アプローチを使用したアプローチ 1:

$resource を使用したアプローチ 2 (データを画面に表示してダウンロードする方法がわからない)

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

angularjs - $resource を使用した AngujarJS サーバー側のページネーション総計アイテム

AngujarJS アプリにサーバー側のページネーションを実装しようとしていますが、追加のリクエストを実行せずに、特定の JSON レスポンスで総計 (リクエストごとの合計ではなく) 項目を取得する方法がわかりません:

私は、これと他の便利な機能を既に実装しているng-tableやなどの優れた貢献ディレクティブを見てきましng-gridたが、基本を本当に学ぶために、この 1 つの機能をゼロから実装できるようにしたいだけです。

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

javascript - AppEngine エンドポイントからオブジェクトの純粋な配列を返したいですか?

AppEngine で RESTFul バックエンドの AppEngine エンドポイントを実行しています。クライアント側でAngujarJSを使用し、ngResourceでサーバーデータを管理しています。

私の問題: AppEngine エンドポイントから純粋な配列を返すことができません。私はこれを試しました:

これはサーバーからクライアントにデータを取得しますが、「SimpleResult」オブジェクトの配列を構築するのではなく、「アイテム」と呼ばれる SimpleResult の配列を含む単一のオブジェクトを構築します。

「クエリ」メソッドは応答として純粋な配列を期待するため、これにより ngResource はかなり役に立たなくなります。

「SimpleResult」配列だけを取得する方法について何か考えはありますか?

ありがとう!

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

rest - AngularJs $resource リクエストとレスポンスの両方での isArray の使用

これがばかげた質問かどうかはわかりませんが、何かが足りないのかもしれません。メソッドをカスタマイズするときに、リソースが配列かどうかを指定するために$resource使用できます。問題は、たとえば で使用されて、リクエスト ボディレスポンスの両方の形状をチェックすることです。これは、たとえば、リクエストに何かの配列 (つまり、バッチ タスクに追加する操作のセット) が必要な場合に、単一のオブジェクト (バッチ タスク自体) を応答として送信することができないことを意味します。isArrayisArrayPOSTPOST

これはコーディングの問題ではなく、これを回避できます。より設計上の問題です。応答と要求が同じ形状でなければならないのはなぜですか? REST サービスを構築する方法についてどこにも述べられているとは思いません。通常は同じ形をしているかもしれませんが、そうである必要はありません。私は何が欠けていますか?

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

angularjs - AngularJS $resource save() により HTTP エラー 415 (サポートされていないメディア タイプ) が発生する

私は Angular 1.2-RC2 (1.0.8 と 1.1.x も試しました) と ngResource モジュールを使用しています。バックエンドは Spring WebMVC アプリケーションです。

Settings クラスの save() メソッドが呼び出されるたびに、フロントエンドは HTTP 415 (サポートされていないメディア タイプ) を受け取ります。その理由は、AngularJS が次のコンテンツ タイプを使用して POST リクエストを送信するためです。

しかし、バックエンドは期待しています

API ドキュメントによると、ヘッダーをオーバーライドできるはずですが、私の設定はどういうわけか無視されます。これは一般的な問題のようで、回避策として$resource の代わりに $http.post を使用することをお勧めします。

$resource サービスを使用してこのコンテンツ タイプの問題を解決する方法を教えてください。

バックエンド コントローラーのコードはこちらで確認してください。

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

ruby-on-rails - AngularJs input[type=file] バグ

angularjs を使用してファイルのアップロードを処理したいと考えています。コントローラーに含まれるモデル、ビュー、コントローラー、およびサービスをセットアップしました。



そして、アップロード メソッド内で、新しい RepositoryItem を作成しようとします。このメソッドはサーバーにリクエストを送信する必要がありますが (init アクションの場合と同様)、リクエストは送信しません。どうすれば修正できますか?

アップ 1:

rails-angular-resource のネストされた呼び出しを追跡しました。$http(config) を呼び出しますが、ネットワーク コンソールでもサーバーでもリクエストは追跡されません。