使用首次呈现时未注册的状态



我有一个非常简单的反应应用程序。 我正在尝试设置一个状态变量,然后在控制台之后立即设置该变量.log但得到一个空白值。

var [techFilterTerm, setTechFilterTerm] = useState('');
setTechFilterTerm('Test');
console.log(techFilterTerm);

我希望在第一次渲染时,这将在控制台中显示"测试" - 但它显示空字符串。 这是怎么回事?

如果我

正确理解您的问题,您想知道更新的值,为此您可以使用 useEffect api,每当您想要观察的值之一发生变化时,就会调用它。您要观察的值需要作为第二个参数作为 useImpact 中的数组传递。在您的情况下,您想知道 techFilterTerm 的更新值,以便您可以将 techFilterTerm 作为第二个参数传递给 useEffect,如下所示。

 useEffect(() => {
      //here you will get the updated value whenever there is change in value
  },[techFilterTerm]); 

这是有关使用效果的更多信息的链接。

https://reactjs.org/docs/hooks-effect.html

相关内容

  • 没有找到相关文章