如何在javascript中传递参数和rest操作符?
下面是我的函数调用:如何在javascript中传递参数和rest操作符?,javascript,vue.js,ecmascript-6,Javascript,Vue.js,Ecmascript 6,下面是我的函数调用: await this.faqs({'fields.page': page, ...filters}); 其功能是: async faqs({state, commit}, filters) { const {items} = await fetchData({content_type: state.contentType, ...filters}); const faqs = items.map((item) => { return { id: it
await this.faqs({'fields.page': page, ...filters});
其功能是:
async faqs({state, commit}, filters) {
const {items} = await fetchData({content_type: state.contentType, ...filters});
const faqs = items.map((item) => {
return {
id: item.systemId,
...item.fields,
};
});
commit('setFaqs', faqs);
return faqs;}
我想和这个rest操作符一起传递另外两个参数。如何才能做到这一点?创建一个对象,让它有两个命名键,然后它们使用“扩展”操作符进行筛选,如下所示:
await this.faqs({'fields.page': page, param1: 'someparam1', param2: 'someparam2', ...filters });
我不认为你的代码片段做你认为他们做的事。如果函数是
async faqs({state,commit},filters){…}
,那么就没有rest参数<代码>过滤器可能是一个数组?因此,调用看起来像this.faq({state:…,commit:…},[…])
其中[…]
是一个可以传递的过滤器数组。如果没有看到更多的代码,很难说。@谢谢,我已经更新了问题。{a:1,{b:2,c:3}
是无效语法。@Olian04去掉了括号,希望是这样fine@AlexanderSolonik,如何在函数中访问它?@Trupti异步常见问题解答({state,commit},param1,param2,filters)
像这样,试试看,让我看看know@AlexanderSolonik,位于console.log(param1);。。。它以{'fields.page':page,param1:'someparam1',param2:'someparam2'}的形式给出输出。。。和console.log(过滤器)未定义