【问题标题】:How do I pass parameters in a function with useState?如何使用 useState 在函数中传递参数?
【发布时间】:2021-04-30 08:56:42
【问题描述】:

如何使用 useState 在函数中传递参数?

const [count, setCount] = useState(0);
const addNumber = (number) => setCount(count + number)

////////////////////////////////////////////////////////////////////

<TouchableOpacity  onPress = {addNumber(1)}>
 
</TouchableOpacity>

“重新渲染过多。React 限制渲染次数以防止无限循环。

【问题讨论】:

  • 尝试const addNumber = (number) =&gt; setCount(oldVal=&gt;oldVal + number) 并更改onPress 像这样&lt;TouchableOpacity onPress = {()=&gt;{addNumber(1)}}&gt;
  • 您需要一个返回函数的函数,参见例如stackoverflow.com/a/63632536/3001761.
  • aaahh.. 一个返回函数的函数!感谢您的链接非常有用????????

标签: reactjs react-native function render use-state


【解决方案1】:
const [count, setCount] = useState(0);
const addNumber = (number) => setCount((prev) => prev + number)

////////////////////////////////////////////////////////////////////

<TouchableOpacity  onPress = {()=>{addNumber(1)}}>
 
</TouchableOpacity>

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-06-25
    • 2022-08-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多