問題タブ [promisekit]

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

swift - Promisekit が実行を終了して Swift で適切な値を返す前に、ループがインクリメントして再実行されます。

Promisekit と Alamofire で while ループを使用して、4 つの GET リクエストをチェーンし、値を返し、新しいパラメーターで 4 つのリクエストを再実行しようとしています。これは私が使用している現在のコードです:

最初の 3 つの関数はそれぞれ約束された文字列値を返します。この値は次の関数に渡され、最後の 4 番目の関数が別の関数を呼び出して、Kanna を使用してダウンロードされた HTML を解析します。

理想的には、4 つの関数すべてを呼び出して完了した後、インデックスをインクリメントし、新しいインデックス番号を使用してループを再度実行したいと考えています。注意として、配列内のどのインデックスと値を比較するかを識別する方法として、インデックスが関数に渡されます。

わかりやすくするために、以下に parseBooksXML 関数のコードを含めました。

どんな助けでも大歓迎です!

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

ios - PromiseKit 4 - 委任のラップ

Promisekit を使用してラップ委任でシングルトンを実装しようとしています

ここで説明されているように、これを実装することができます: https://github.com/mxcl/PromiseKit/issues/136

動作しますが、promise は最初の呼び出しの値を保持します。値を更新しません。

サンプルコード:

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

swift - クロージャから「フルフィル」を呼び出す際のエラー

これが私のエラーです...

スレッド 1: EXC_BAD_ACCESS (コード = 1、アドレス = 0x18)

これが私の製品リクエストデリゲートです...

リクエストはこちら...

この呼び出しにより、エラーが発生します...

これがうまくいかない理由はありますか?デリゲートの割り当てが解除されたようです。

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

ios - PromiseKit/Alamofire から Promise を返す

私はこの一見些細なことをしようとしています:

ただし、コンパイラは(当然のことながら)次のように不平を言っています。

'guard' 本体は通過しない可能性があります。'return' または 'break' を使用してスコープを終了することを検討してください

ここで Promiseを返す必要があることは理解しています。reject() および フルフィル() 呼び出しの下に正確に何を配置すればよいかわかりません。

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

ios - Swift - ループを使用した複数のチェーン HTTP リクエスト

2 日以来、複数の http リクエストに関する問題を解決するために Web 全体を検索しているように感じます。したがって、私のワークフローは次のようになります。

  1. サーバーに画像をアップロードする

    • 応答 = タスク ID を含む XML 形式
  2. タスク ID を使用してサーバーに GET 要求を送信し、このタスクのステータスを確認します。

    • 応答 = ステータスが「完了」、「進行中」、「待機中」の XML 形式
    • Status != "Completed" の場合 - ステップ 2 を再試行します。
    • Status == "Completed" の場合 - ステップ 3 に進みます
  3. resultUrl から結果をダウンロードする

私の最後の試みはPromiseKit、この投稿で説明されているように、リクエストをきれいな方法で連鎖させるために使用することでした: Chain multiple Alamofire requests。しかし、ステータスがまだ完了していない場合、2〜5秒ごとに2番目のステップをループする方法がわかりません。

このワークフローに推奨されるソリューションはありますか? PromiseKitこれは、ループなしでリクエストを正常にチェーンした での私のテストでした:

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

swift - あるプロミス タイプから別のプロミス タイプに変換する

promise を返す関数が 1 つあり、promise を返す別の関数を呼び出す場合、これを行わずに 2 つの間で変換することは可能ですか...

呼び出しがない場合.then、コンパイラはある型から別の型に変換できません。