Typescript和Redux:Binding元素';字符串';隐式具有';任何';类型

Typescript和Redux:Binding元素';字符串';隐式具有';任何';类型,typescript,redux,Typescript,Redux,在我的React Android原生应用程序中,我有一个使用Redux的组件 正如线程中的“Hemant”所述,我必须将作为道具导入的操作也传递到组件中。现在我尝试正确地键入操作,但它给了我一个错误:Binding元素'string'隐式地有一个'any'类型,我不明白为什么 代码如下: imports ... import {reduxAction} from '../../../store/searchBar/actions'; type Props = { reduxAction:

在我的React Android原生应用程序中,我有一个使用
Redux
的组件

正如线程中的“Hemant”所述,我必须将作为
道具导入的操作也传递到组件中。现在我尝试正确地键入操作,但它给了我一个错误:
Binding元素'string'隐式地有一个'any'类型
,我不明白为什么

代码如下:

imports ...
import {reduxAction} from '../../../store/searchBar/actions';

type Props = {
  reduxAction: ({value: string}) => void;
};

const SearchBar: React.FC<Props> = ({reduxAction}) => { 

// calling the action method
const sendNamesToReduxStore = (names: string) => {
  // ... some other logic
  // calling the action method
  reduxAction({value: names});
};
导入。。。
从“../../../store/searchBar/actions”导入{reduxation};
类型道具={
reduxAction:({value:string})=>void;
};
常量搜索栏:React.FC=({reduxation})=>{
//调用action方法
const sendNamesToReduxStore=(名称:字符串)=>{
//…还有其他逻辑
//调用action方法
重排({value:names});
};
如您所见,在调用操作方法时,
names
被声明为
string
。因此,我在
Props
中也将其声明为
string
。我认为这是绝对正确的。请注意:当我执行
reduxation:({value:any})=>void;
它给出了与上述
any
相同的错误:
绑定元素“any”隐式地具有“any”类型


你能告诉我我做错了什么吗?

如果有人在解决这个问题:

您必须使用操作中声明的类型声明函数中变量的类型

reduxAction: (value: reduxActionState) => void;
…因为在
actions.ts中我声明

export const reduxAction = (value: reduxActionState): ResultValueType => ({
  type: SET_RESULT_VALUE,
  payload: value,
});