不熟悉调用方括号中的函数

时间:2017-03-01 07:13:43

标签: javascript ecmascript-6 vue.js

我是Javascript和vue.js的新手。最近,我开始使用Vue构建我们公司的管理系统,所以我从互联网上读了一些代码并学习如何使用它。 以下是我无法理解的代码片段。如何在方括号中定义函数?

该代码用于vuex。

//mutation-types.js
export const ADD_TOTAL_TIME = 'ADD_TOTAL_TIME'
export const DEC_TOTAL_TIME = 'DEC_TOTAL_TIME'
export const SAVE_PLAN = 'SAVE_PLAN'
export const DELETE_PLAN = 'DELETE_PLAN'

//mutation.js
import * as types from './mutation-types'
export default {
  [types.ADD_TOTAL_TIME] (state, time) {
    state.totalTime = state.totalTime + time
  },
  [types.DEC_TOTAL_TIME] (state, time) {
    state.totalTime = state.totalTime - time
  },
  [types.SAVE_PLAN] (state, plan) {
    const avatar = 'https://sfault-avatar.b0.upaiyun.com/147/223/147223148-573297d0913c5_huge256'
    state.list.push(
      Object.assign({name: 'Jack', avatar: avatar}, plan)
    )
  },
  [types.DELETE_PLAN] (state, idx) {
    state.list.splice(idx, 1)
  }
}

Define functions name Function Call

1 个答案:

答案 0 :(得分:1)

这些是计算的属性名称,有关详细信息,请参阅Object initializer: Computed property namesMethod definitions