这是我试图理解的代码片段。
import { increment } from '../features/counter/counterSlice'
const object = {
[increment]: () => {}
}
console.log(object)
// logs { "counter/increment": Function}
下面的语法具体是做什么的?
[increment]: () => {}
Increment是由createSlice()创建的一个reducer函数。
This
const object = {
[increment]: () => {}
}
与
的结果相同const object = {};
object[increment] = () => {};
也就是说,在object
const object = {
[increment]: () => {}
}
创建一个只有一个属性的对象。该属性的名称由名为increment
的变量中的字符串定义。如果increment
的值为"foo"
,则等于:
const object = {
foo: () => {}
}
该属性的值是一个不做任何事情的函数。
一个箭头函数有这样的形式
(...args) => { /* function body */ }
所以() => {}
是一个不带参数的函数,并且在函数体中没有语句。