reactjs - 来自 useState 的 React 调用函数,例如 useState(func())
问题描述
愚蠢的问题,我可以在 useState 中调用/调用函数吗?我的意思是useState(myfunc())
或者我应该这样做const func = myfunc()
,useState(func)
或者根本不重要?这样做没有副作用吗?我想知道这方面的良好/最佳实践。一般的方法是保存函数返回的状态值
解决方案
是的你可以:
有时最好有一个在多个组件中使用的通用函数,这样您就可以导入它并按照您的要求使用它,它具有同步执行和返回值。
const { useState , useEffect } = React;
const App = () => {
const getNames = () => {
return ["Vivek" , "Darhista" , "Darshvi"]
}
const [users,setUsers] = useState(getNames());
return (
<div>
{ users.map(user => <p>{user}</p>) }
</div>
);
}
ReactDOM.render(<App />, document.getElementById('react-root'));
<script src="https://cdnjs.cloudflare.com/ajax/libs/react/16.8.4/umd/react.production.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/react-dom/16.8.4/umd/react-dom.production.min.js"></script>
<div id="react-root"></div>
推荐阅读
- c - 擦除和写入闪存会在构建时出错
- oracle - 从 Id 中删除 @GeneratedValue 对性能有什么影响
- c# - C# WPF 点击随机按钮
- jenkins - Jenkins perforce 在 Windows 上触发构建?
- javascript - 将 ng-src 的值传递给 ng-model - AngularJs 签名指令
- hadoop - Apache Nifi MergeContent 输出数据不一致?
- python - 曲线拟合方程python
- python - 提取括号内(外部)项目的数量
- uml - UML - 以圆形和正方形表示的对象,哪个是正确的?
- c++ - c++/c访问多个不同名称和大小的char数组