useState的响应调用函数,如useState(func())

问题描述 投票:1回答:1

愚蠢的问题,我可以在useState内调用/调用函数吗?我的意思是useState(myfunc())还是应该做const func = myfunc(),然后是useState(func)还是根本没有关系?而且这样做没有副作用吗?我想知道这方面的良好/最佳做法。通用方法是保存函数返回的状态值

reactjs
1个回答
0
投票

是的,您可以:

有时候,有一个通用功能正在多个组件中使用,因此您可以按要求导入并使用它,它具有同步执行和返回值。


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>
© www.soinside.com 2019 - 2024. All rights reserved.