这些出口是否相同?对我来说,一种有效,另一种无效,但我不知道区别。
工作
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());
答案 0 :(得分:1)
您正在导出一个函数而不是一个值。就像在工作代码中一样,这通过在导出函数之前对其进行评估来使您的不工作变为工作。
export default (() => {
const faqStore = new Vapi({
baseURL: 'http://domain.test/api',
state: {
faqs: [],
}
}).get({
action: 'getFaqs',
property: 'faqs',
path: '/faqs'
})
return faqStore.getStore()
})()