reactjs - Action Creator - 你能解释一下吗?
问题描述
const createRefDoneAction: (widget: widget[]) => WidgetAction =
(widgets: widget[]) => ({
type: actionTypes.REFRESH_WIDGET_DONE,
widgets,
})
你能解释一下为什么有2个带参数的括号传入(即'widget:widget[]'和'widgets:widget[]'和2个返回值(即'WidgetAction'和'{type:...,widgets, }?
试图了解这段代码“究竟”发生了什么。我以前使用过 React,但没有使用 typescript。
非常感谢!:)
解决方案
它描述了参数和返回值的类型。看看文档
const createRefDoneAction
声明一个名字的常量- 然后
: (widget: widget[]) => WidgetAction
将此常量描述为一种函数类型,该函数接受具有类型变量的数组的单个参数widget
并返回具有类型的值WidgetAction
然后函数的主体来了,它与 TypeScript 语法无关,但使用 ES6 箭头函数语法:
= (widgets: widget[]) => ({ type: actionTypes.REFRESH_WIDGET_DONE, widgets, })