Repetir uma etapa da promessa
Suponha que eu tenha a seguinte cadeia de Promessa:
var result = Promise.resolve(filename)
.then(unpackDataFromFile)
.then(transformData)
.then(compileDara)
.then(writeData);
Agora eu não tenho apenas umtransformData
função, mas dois ou mais, armazenados em uma matriz. Quero experimentar o primeiro e se ocompileData
função falhar, tente o segundo e assim sucessivamente atécompileData
for bem-sucedido ou a matriz detransformData
funções está esgotada.
Alguém pode me dar um exemplo de como implementar isso?
Executando tudotransformData
funções e fornecer a matriz de resultados paracompileData
não é uma opção, pois as funções são muito caras e eu quero executar o menor número possível delas.
transformData
em si também retorna uma promessa, se isso ajudar.