Использование map для Promise.all возвращает массив неопределенных при возврате обещаний, вложенных в блок then.

Вы можете достичь того, чего хотите с помощью классов:

public class Base
{
    public const int A = 1;
    public const int B = 2;
    public const int C = 3;
}
public class Consume : Base
{
    public const int D = 4;
    public const int E = 5;
}

Теперь вы можете использовать эти классы, похожие на, как когда они были перечислены:

int i = Consume.B;

Обновление (после вашего обновления вопроса):

Если вы назначаете одни и те же значения int константам, как определено в существующем перечислении, вы можете указать между перечислением и константами, например:

public enum SomeEnum // this is the existing enum (from WSDL)
{
    A = 1,
    B = 2,
    ...
}
public class Base
{
    public const int A = (int)SomeEnum.A;
    //...
}
public class Consume : Base
{
    public const int D = 4;
    public const int E = 5;
}

// where you have to use the enum, use a cast:
SomeEnum e = (SomeEnum)Consume.B;
2
задан Jack Bashford 1 March 2019 в 23:41
поделиться

1 ответ

Ваша функция map ничего не возвращает, только ваша функция then:

let promises = myArray.map(result => 
    {
        return searchPromise(result.type).then((searchReply) => 
        {
            return processReply(result, searchReply)
        });
    }
);

В качестве альтернативы опустите фигурные скобки, как указано в комментариях, для принудительного возврата:

[ 111]
0
ответ дан Jack Bashford 1 March 2019 в 23:41
поделиться
Другие вопросы по тегам:

Похожие вопросы: