在 React 中制作计算器应用程序。setState 不起作用

皮艇

我正在 React 中制作一个计算器应用程序。这里我有 App 组件和 Button 组件。当我单击一个按钮时,尽管我使用参数 (event.target.getAttribute('data-number') 设置了状态,它控制台记录的数字与按钮的属性不同。

当我单击带有“data-number=1”的按钮时,状态“result”设置为“0”。然后我单击带有“data-number=7”的按钮,状态“result”设置为“1”。我想知道发生了什么以及如何解决这个问题。

class App extends React.Component {
    state = { result: 0 };

    currentNumber = (number) => {
        this.setState({ result: number })
        console.log("Number from Button", number); // 1
        console.log("Current number in state", this.state.result); // 0
    }

    render() {
        return (
            <div>
                <Button onClick = {this.currentNumber} />
            </div>
        );
    }
}
class Button extends React.Component {

    render() {
        return (
            <ul>
                <li><button data-number="1" onClick={event => this.props.onClick(event.target.getAttribute('data-number'))}>1</button></li>
            </ul>

Smarticles101

调用setState是异步的,这意味着状态不会立即更新。您可以传递在状态更新后运行的回调:

this.setState({ result: number }, () => {
        console.log("Number from Button", number); // 1
        console.log("Current number in state", this.state.result); // 1
})

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

setState在React的setInterval内部不起作用

来自分类Dev

TypeScript React setState 不起作用

来自分类Dev

React 应用程序在 Safari 浏览器中不起作用?语法错误

来自分类Dev

来自React应用程序的发布请求不起作用

来自分类Dev

Bootstrap Dropdown在React中不起作用

来自分类Dev

订阅在React Native中不起作用?

来自分类Dev

IBAction在制作计算器应用程序中的作用范围

来自分类Dev

为什么相对图像路径在我的React应用程序中不起作用?

来自分类Dev

CSS效果在React应用程序中不起作用

来自分类Dev

Axios取消令牌在实时搜索React应用程序中不起作用

来自分类Dev

在 React Native 应用程序中实现 redux 不起作用

来自分类Dev

Express route /index.js 在我的 React 应用程序中不起作用

来自分类Dev

componentWillReceiveProps 在我的 React 应用程序中不起作用。它显示为未定义

来自分类Dev

为什么我的幻灯片在我的 React 应用程序中不起作用?

来自分类Dev

kubernetes DNS在React应用中不起作用

来自分类Dev

offcanvas jQuery触发器在React中不起作用

来自分类Dev

offcanvas jQuery触发器在React中不起作用

来自分类Dev

React-Native this.setState()不起作用

来自分类Dev

React-Native Animated在setState附近不起作用

来自分类Dev

使用Webpack构建应用后,React Routes不起作用

来自分类Dev

使用Webpack构建应用后,React Routes不起作用

来自分类Dev

React Form组件onSubmit处理程序不起作用

来自分类Dev

React Storybook Checkbox更改处理程序不起作用

来自分类Dev

React路由器嵌套路由不起作用

来自分类Dev

React路由器V4不起作用

来自分类Dev

flex在react-native中的ScrollView中不起作用

来自分类Dev

这在 React 组件中的异步函数中不起作用

来自分类Dev

形式onSubmit方法在react.js中不起作用

来自分类Dev

流星React组件onClick事件在IE中不起作用

Related 相关文章

  1. 1

    setState在React的setInterval内部不起作用

  2. 2

    TypeScript React setState 不起作用

  3. 3

    React 应用程序在 Safari 浏览器中不起作用?语法错误

  4. 4

    来自React应用程序的发布请求不起作用

  5. 5

    Bootstrap Dropdown在React中不起作用

  6. 6

    订阅在React Native中不起作用?

  7. 7

    IBAction在制作计算器应用程序中的作用范围

  8. 8

    为什么相对图像路径在我的React应用程序中不起作用?

  9. 9

    CSS效果在React应用程序中不起作用

  10. 10

    Axios取消令牌在实时搜索React应用程序中不起作用

  11. 11

    在 React Native 应用程序中实现 redux 不起作用

  12. 12

    Express route /index.js 在我的 React 应用程序中不起作用

  13. 13

    componentWillReceiveProps 在我的 React 应用程序中不起作用。它显示为未定义

  14. 14

    为什么我的幻灯片在我的 React 应用程序中不起作用?

  15. 15

    kubernetes DNS在React应用中不起作用

  16. 16

    offcanvas jQuery触发器在React中不起作用

  17. 17

    offcanvas jQuery触发器在React中不起作用

  18. 18

    React-Native this.setState()不起作用

  19. 19

    React-Native Animated在setState附近不起作用

  20. 20

    使用Webpack构建应用后,React Routes不起作用

  21. 21

    使用Webpack构建应用后,React Routes不起作用

  22. 22

    React Form组件onSubmit处理程序不起作用

  23. 23

    React Storybook Checkbox更改处理程序不起作用

  24. 24

    React路由器嵌套路由不起作用

  25. 25

    React路由器V4不起作用

  26. 26

    flex在react-native中的ScrollView中不起作用

  27. 27

    这在 React 组件中的异步函数中不起作用

  28. 28

    形式onSubmit方法在react.js中不起作用

  29. 29

    流星React组件onClick事件在IE中不起作用

热门标签

归档