以下のコードでは、idをapplySaveAsync関数に渡すにはどうすればよいですか?lodashフローを非同期に実行している間に引き数を渡す
var then = _.curry(function (f, thenable) {
return thenable.then(f);
});
var validateAsync = _.flow(
function() { return _(someCondition).showError(ERROR_01).value(); },
then(function() { return _(anotherCondition).showError(ERROR_02).value(); })
);
var save = _.flow(
validateAsync,
then(applySaveAsync),
then(saveCompleted)
);
function applySaveAsync(id) {
// Saving...
}
save(22); // Calling save function with some id.
私はvalidateAsync機能上のIDを得ることができますが、私は約束を返す必要がありますvalidateAsyncので、戻ってそれを返すことができません。
これを実現する方法はありますか?
を書くことができるようにします。たとえ彼らがテーブルに追加したものであっても、私はそれが何であるか分からない。通常の関数として保存していた場合、IDが取得されます(ジョブ完了)。 – Keith
「あなたはそれを元に戻すことができない」とはどういう意味ですか?あなたの 'validateAsync'関数がIDを満たす約束を返していることが分かります。あなたの問題はどこですか?たぶんあなたのコードをもっと見せてくれるでしょう。 – Bergi
@Bergi私は 'validateAsync'のコードを含んでいます。あなたの助けをありがとう – Anas