【问题标题】:Invalid prop `function` of type `boolean`“布尔”类型的无效道具“函数”
【发布时间】:2018-08-21 19:39:51
【问题描述】:

我正在尝试将一个函数从我的一个 JavaScript 文件传递​​给一个组件。

<Button onPress={() => console.log(title)} />

我试图将函数分配给一个变量。我试图将函数放在组件文件中。不管我做什么,我都会收到同样的错误:

提供给 boolean 类型的无效属性 onPress TouchableOpacity,预期为function

这是我的 Button 组件代码。

const Button = ({ onPress }) => {
const { buttonStyle,
buttonTextStyle } = styles;

return (
    <TouchableOpacity onPress{...onPress} style={buttonStyle}>
        <Text style={buttonTextStyle}>Click Me!!</Text>  
    </TouchableOpacity>
);

};

每次我没有将... 放在 onPress 函数中时,我都会收到此错误:

解析错误:意外令牌,应为...

我是 React Native 的新手,现在已经调试了一个小时。难倒我做错了什么。我不明白为什么代码认为该函数是布尔类型。作为参考,我使用的是 ESLint 和扩展名rally coding

【问题讨论】:

  • 您缺少作业。 onPress = {onPress}

标签: javascript reactjs react-native eslint


【解决方案1】:

onPress 接受您在道具中传递的函数。只需引用解构的属性。此外,您在 onPress 属性中缺少 =

<TouchableOpacity onPress={onPress} style={buttonStyle}>

【讨论】:

  • 很高兴能为您提供帮助,如果确实解决了您的问题,请将问题标记为已回答,谢谢
猜你喜欢
  • 2021-11-07
  • 1970-01-01
  • 2020-07-18
  • 2020-10-04
  • 2021-07-27
  • 2021-03-18
  • 1970-01-01
  • 1970-01-01
  • 2018-04-04
相关资源
最近更新 更多