我知道Vue实例中不应使用箭头功能。但是在操作中,甚至在vuex文档中也使用了它们。
尝试从中等角度使用此示例,但出现语法错误。
模块构建失败:SyntaxError:意外的令牌,预期
49 | return ApiService
50 | .get('project_list')
> 51 | .then(({data})) => {
| ^
52 | context.commit(SET_PROJECTS, data.projects.results);
53 | context.commit(FETCH_END)
54 | }
src / store / projects.module 中的代码。在此仅更改了变量名称。因此,我对此语法错误有些困惑。
const actions = {
[FETCH_PROJECTS] (context, payload) {
context.commit(FETCH_START)
return ApiService
.get('project_list')
.then(({data})) => {
context.commit(SET_PROJECTS, data.projects.results);
context.commit(FETCH_END)
}
.catch(({response})) => {
context.commit(SET_ERROR, response.data.errors)
}
},
[FETCH_A_PROJECT] (context, payload) {
context.commit(FETCH_START)
const {project_id} = payload
return ApiService
.get(`project_list/${project_id}`)
.then(({data})) => {
context.commit(SET_A_PROJECT, data.projects);
context.commit(FETCH_END)
})
.catch(({response})) => {
context.commit(SET_ERROR, response.data.errors)
})
}
}
答案 0 :(得分:2)
您过早关闭了then
方法。像这样删除一个右括号:
.then(({data}) => {
context.commit(SET_PROJECTS, data.projects.results);
context.commit(FETCH_END)
})