在react中,setState是变量值更改的常用方法。但由于setState是异曰搬嚏嘀步加载,我们常常在render以外的方法中会获取不到state的新值。本教程图文详细步骤,割洇佼唔演示如何解决由于setState的异步机制获取不到值。
工具/原料
已安装好node.js,express,react
方法/步骤
1、演示文件,部分代码讲解1.两个文件。入口文竭惮蚕斗件:app.jsreact-dom文件:Home.jsx2.app.枣娣空郅js:是非常简单的react入口文件写法3.Home.jsx:有一个button,点击button,在控制台打印个数字4.浏览器验证
2、重现setState获取不到新设置的值1.设置state属性变量2.打印一下state属性3.用setState更改state属性,然后再打印,发现state属性值没有更改。
3、解决方案在setState方法有个回调方法,只要我们吧逻辑写在这个回调方法里即可。
4、验证再次在浏览器输入地址,点击按钮,可以看到控制台输出更新后的值。