Promise.resolve без аргументов - PullRequest
0 голосов
/ 23 июня 2018

Я знаю, подобный вопрос задавался ранее , но он не совсем отвечает тому, что я пытаюсь понять.

Я читаю mobx-state-роутер учебник и он имеет этот кусок кода:

{
    name: 'department',
    pattern: '/departments/:id',
    onEnter: (fromState, toState, routerStore) => {
        const { rootStore: { itemStore } } = routerStore;
        itemStore.loadDepartmentItems(toState.params.id);
        return Promise.resolve();
    }
},

Я не понимаю, к чему это Promise.resolve() относится?Какое обещание это?Как / когда это разрешается?

1 Ответ

0 голосов
/ 23 июня 2018

Что это за обещание?

Promise.resolve создает новое обещание.

Как / когда это разрешается?

Сразу же, для этого Promise.resolve.

onEnter, очевидно, должен вернуть обещание. В этом конкретном onEnter он не выполняет асинхронную работу, поэтому возвращает предварительно разрешенное обещание. Обычно вы указываете значение, которое обещание должно быть разрешено с помощью (Promise.resolve(42)), но если вы этого не сделаете, применяется обычная семантика JavaScript, а значение, используемое для разрешения обещания, - это значение undefined.

См. Promise.resolve в спецификации и в MDN .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...