Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/variables/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Vue.js vuex存储模块箭头函数中的语法错误_Vue.js_Vuex_Vuex Modules - Fatal编程技术网

Vue.js vuex存储模块箭头函数中的语法错误

Vue.js vuex存储模块箭头函数中的语法错误,vue.js,vuex,vuex-modules,Vue.js,Vuex,Vuex Modules,我知道在Vue实例中不应该使用箭头函数。但在操作中,甚至在vuex文档中也使用了它们 尝试从媒体使用此示例,但出现语法错误 模块生成失败:语法错误:意外标记,应为 src/store/projects.module中的代码。这里只更改了变量名。所以我对这个语法错误有点困惑 const actions = { [FETCH_PROJECTS] (context, payload) { context.commit(FETCH_START) return ApiService

我知道在Vue实例中不应该使用箭头函数。但在操作中,甚至在vuex文档中也使用了它们

尝试从媒体使用此示例,但出现语法错误

模块生成失败:语法错误:意外标记,应为

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)
      })
  }
}

您过早地关闭了then方法。去掉一个右括号,如下所示:

。然后{data}=>{ context.commitSET_PROJECTS、data.PROJECTS.results; context.commitFETCH\u结束 } 尝试从.then{data}=>{中删除,并将其保持为.then{data}=>{
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)
      })
  }
}