JavaScriptを使用して複数のファイルをアップロードしています。
ファイルをアップロードしたら、いくつかの処理機能を実行する必要があります。
必要な処理時間のため、プロセス全体の推定残り時間をユーザーに伝える UI が前面に必要です。
基本的に私は3つの機能を持っています:
- /upload - これはファイルをアップロードするためのエンドポイントです
- /generate/metadata - これは /upload の後にトリガーされる次のエンドポイントです
- /process - これは最後のエンドポイントです。/generate/metadata の後にトリガーする必要があります
これは、基本的に画面がどのように見えるかを期待する方法です。
残りのパーセンテージや残り時間などの情報が表示されます。
ただし、サーバーが情報を提供できるようにするか、javascript のみを使用してハッキング見積もりを行うかはわかりません。
また、次のようなユーザーメッセージを伝えるように画面を更新する必要があります
「現在アップロード中」
私が機能1にいる場合。
機能 2 の場合は「メタデータの生成」。
機能 3 の場合は「処理中 ...」。
機能 2 は、1 が正常に完了した後にのみ発生します。
機能 3 は、2 が正常に完了した後にのみ発生します。
私はすでに q.js promise を使用してこの一部を処理していますが、コードは恐ろしく乱雑になっています。
私は最近 Backbone に出くわしました。これにより、私が望んでいた単一ページのアプリの動作を処理する構造化された方法が可能になります。
エンドポイントの成功または失敗に対してサーバー側が json 応答を返すことに問題はありません。
Backbone.js を使用してこの関数を実装するにはどうすればよいか考えていました。