Typescript TS7006:参数"__&引用';隐式具有';任何';类型。I';我无法理解错误&;下面的解决方案
起初,我的代码是这样的Typescript TS7006:参数"__&引用';隐式具有';任何';类型。I';我无法理解错误&;下面的解决方案,typescript,react-native,Typescript,React Native,起初,我的代码是这样的 const customerInputHandler = (currentCustomer) => { setCustomer(currentCustomer.nativeEvent.text); }; 在搜索了互联网之后,我找到了一个解决方案,我实现了下面的代码。 我一直在四处搜索,试图理解这段代码,但无法理解。 请解释一下我上面的错误,解释一下为什么这个解决方案解决了所有问题 const customerInputHandler = (curr
const customerInputHandler = (currentCustomer) => {
setCustomer(currentCustomer.nativeEvent.text);
};
在搜索了互联网之后,我找到了一个解决方案,我实现了下面的代码。
我一直在四处搜索,试图理解这段代码,但无法理解。
请解释一下我上面的错误,解释一下为什么这个解决方案解决了所有问题
const customerInputHandler = (currentCustomer: {
nativeEvent: {text: React.SetStateAction<string>};
}) => {
setCustomer(currentCustomer.nativeEvent.text);
};
const customerInputHandler=(当前客户:{
nativeEvent:{text:React.SetStateAction};
}) => {
setCustomer(currentCustomer.nativeEvent.text);
};
在typescript中,没有给出显式类型(编译器无法对其进行一些推断)的所有内容都被赋予类型any
。这不一定是一个错误——有时事情很难描述,或者可以合法地是任何
(例如fetch
语句的结果)。在这些情况下,您需要将类型标记为明确的any
。注意:我认为您可以关闭此行为,这样隐式任何都是有效的(您不应该这样做——否则,只需使用javascript)
至于修复为何有效:
您给了currentCustomer
一个类型。具体来说,它属于以下类型:
{
nativeEvent: {
text: React.SetStateAction<string>
}
}
尽管免责声明:我还没有实际测试过这个。同样,您希望尽可能避免any
,因为它会在整个应用程序中迅速传播,导致大量的typescript无效
您可能想看看是否有一些react native@types包可以包含在您的项目中,它可以为您提供上述类型的简写。在typescript中,所有没有给出显式类型(编译器无法对其进行一些推断)的内容都会给出类型any
。这不一定是一个错误——有时事情很难描述,或者可以合法地是任何
(例如fetch
语句的结果)。在这些情况下,您需要将类型标记为明确的any
。注意:我认为您可以关闭此行为,这样隐式任何都是有效的(您不应该这样做——否则,只需使用javascript)
至于修复为何有效:
您给了currentCustomer
一个类型。具体来说,它属于以下类型:
{
nativeEvent: {
text: React.SetStateAction<string>
}
}
尽管免责声明:我还没有实际测试过这个。同样,您希望尽可能避免any
,因为它会在整个应用程序中迅速传播,导致大量的typescript无效
您可能想看看是否有一些react native@types包可以包含在您的项目中,这可以为您提供上述类型的简写