問題タブ [ember-cli-mirage]
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.
ember.js - ember-cli-mirage エラー: ハンドラーから何も返されませんが、ハンドラーは存在します
私が使用しているアプリにはGET
、ユーザーのメール アドレスを検証するルートがあります。電子メールが無効な場合、サーバーは次のように応答します。
- ステータス
200
コード - を含む応答ヘッダー
Content-Type:application/json; charset=utf-8
- 応答データ自体は、「このメールは無効です」という単なる文字列です。
私はこれをシミュレートしようとしember-cli-mirage
ています:
テスト自体は、このリクエストを開始するボタン クリックです。
...そして、私が得ているエラーは次のとおりです。
プリテンダーが GET /ember_api/v1/validations/validate_email?email=tom%40gmail.com&skip_uniq=true をインターセプトしましたが、エラーが発生しました: /ember_api/v1/validations/validate_email?email=tom%40gmail.com&skip_uniq=true のハンドラーから何も返されませんでした。[ステータス、ヘッダー、本文] を返すことを忘れないでください。あなたのルートハンドラーで。
それは私に求めてreturn [status, headers, body]
いますが、ハンドラーでこれを行っていますが、それでもエラーがスローされます。
これは実際に応答の問題ですか?JSON API 形式のオブジェクトを実際に返すように API を編集する必要がありますか? そのようにテストを記述できますか?
それがアプリが行っていることなので、テストで文字列を返すことができるはずだと感じています。どんな助けでも大歓迎です。
javascript - Mirage を使用した Ember でのテスト - 依存アイテムのないアイテムを削除
私の Ember アプリケーションでは、イベントと todo を追加、編集、削除し、todo とイベントを関連付けることができます。バックエンドは Rails アプリケーションです。テストには Mirage を使用します。Mirage のモデルには次の関係があります。
私の受け入れテストでは、イベントと、イベントとユーザーに関連付けられたいくつかの todo を持つユーザーを作成します。イベント ページにアクセスし、作成されたイベントをクリックします。イベントに関連付けられているすべての Todo を選択して、それらを削除することもできます。しかし、この場合、接続された todo なしでイベントを削除したいだけです。確認してから削除リクエストを開始します。
config.js の削除ルート:
生産的なコードでは、すべてが正常に機能します。しかし、テストでは、作成されたイベントにはリレーションとしての todo がなく、確認後、イベントとちょうど 1 つの todo が削除されます。 エラーメッセージ
ember.js - 相対イメージ ソース ember js
emberjs(ember-cli)のアセットパスに問題があります。
私は 2 つのルートを持っています:ルートindex
、article
インデックス ルートのパスは単なる a/
で、記事ルートのパスはarticle/:article_id
router.js
テンプレートではidnex
、ディレクトリにあるアセットをpublic/assets/
次のように参照しています。<img src="/assets/images/image1.jpg/>
その作業は素晴らしいですが、article
テンプレートで同じタグを使用すると、画像が読み込まれず、原因はクライアント(ブラウザ)が送信することです次の URL を持つサーバーへのリクエストlocalhost:4200/article/assets/images/image1.jpg
。
ember.js - テンプレートのメタデータ属性へのアクセス
私は、ember-cli-mirage といくつかのメタデータを使用してモック化された API エンドポイントを持っています。モデル シリアライザーをオーバーライドして、次のようなメタデータを追加しました。
API 呼び出しは、そのメタデータを正しく返します。
このルート ハンドラがあるとします。
そのデータをテンプレートに印刷しようとすると
その後、何もレンダリングされません。何か不足していますか?
ember.js - 蜃気楼の残り火の属性は未定義です
mirage と ember を使用して、API バックエンドをシミュレートしたいと考えています。私はクイック スタートに従いましたが、ストアへの呼び出しで 10 個のエントリを取得できます。
これを設定するために createList を使用しましたが、それらを表示すると、id と type だけが正しいです。ember chromeアドオンで属性名を確認できますが、すべてが未定義です。
私が間違っていることは何か分かりますか?
次のシリアライザーと関係があるのではないかと思いました。
属性は通常 data 属性にあり、それは ember データによって処理されるので、それ以上の変更は必要ないと思いますか?