Являются ли эти экспорты идентичными по функции? - PullRequest
0 голосов
/ 10 января 2019

Являются ли эти экспортные идентичные? Для меня одно работает, а другое нет, но я не знаю разницы.

Рабочая

const faqStore = new Vapi({
    baseURL: 'http://domain.test/api',
    state: {
        faqs: [],
    }
}).get({
    action: 'getFaqs',
    property: 'faqs',
    path: '/faqs'
})

export default faqStore.getStore()

Не работает

export default () => {
    const faqStore = new Vapi({
        baseURL: 'http://domain.test/api',
        state: {
            faqs: [],
        }
    }).get({
        action: 'getFaqs',
        property: 'faqs',
        path: '/faqs'
    })

    return faqStore.getStore()
}

Как заставить неработающий пример вести себя как рабочий пример, чтобы я мог передать аргумент функции?

И вот как они используются соответственно ...

Рабочая

import faqStore from './faqs'
...
await store.registerModule('faqs', faqStore));

Не работает

import faqStore from './faqs'
...
await store.registerModule('faqs', faqStore());

1 Ответ

0 голосов
/ 11 января 2019

Вы экспортируете функцию вместо значения. Это превращает ваш не работающий в рабочий путем оценки функции перед ее экспортом, как вы делаете это в своем рабочем коде:

export default (() => {
    const faqStore = new Vapi({
        baseURL: 'http://domain.test/api',
        state: {
            faqs: [],
        }
    }).get({
        action: 'getFaqs',
        property: 'faqs',
        path: '/faqs'
    })

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