reactjs - 无法从 react 钩子(Hook)状态获取值

标签 reactjs react-native react-hooks

我是 React Native 和 Hooks 的新手。在我的项目中,我声明了两个状态属性,我想将它们放入函数中。但我没有从钩子(Hook)属性中获取值。在控制台中,它正在写入 [object object]

const Login =()=> {
  const [username, setUserName] = React.useState('');
  const [password, setPassword] = React.useState('');

  callAPI = async ()=>{
    console.log('api called :' + username)
  }
}

最佳答案

这是您想要实现的目标的一个工作示例。

function mockAPI(username,password) {
  return new Promise((resolve,reject) => {
    setTimeout(()=>resolve(`The API received username: ${username} and pwd: ${password}`),1000);
  });
}

function App() {
  
  const [username, setUsername] = React.useState('');
  const [password, setPassword] = React.useState('');
  
  function callMockAPI(user,pwd) {
    mockAPI(user,pwd)
    .then((result)=>console.log(result));
  }
  
  return(
    <React.Fragment>
      <div>
        Username: <input type='text' value={username} onChange={()=>setUsername(event.target.value)}/>
      </div>
      <div>
        Password: <input type='password' value={password} onChange={()=>setPassword(event.target.value)}/>
      </div>
      <div>
        <button onClick={()=>callMockAPI(username,password)}>Submit</button>
      </div>
    </React.Fragment>
  );

}

ReactDOM.render(<App/>, document.getElementById('root'));
<script src="https://cdnjs.cloudflare.com/ajax/libs/react/16.8.3/umd/react.production.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/react-dom/16.8.3/umd/react-dom.production.min.js"></script>
<div id="root"/>

关于reactjs - 无法从 react 钩子(Hook)状态获取值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58802039/

相关文章:

javascript - 如何使用 react Hook 在组件之间共享 Assets 请求?

reactjs - 如何覆盖 Material ui组件中的特定样式

javascript - 带有 "this"关键字的 React 类行为

react-native - 状态栏不尊重 'barStyle' 属性

ios - didReceiveLocalNotification、didReceiveRemoteNotification 和 willPresentNotification 从未在通知出现时触发,React Native App

javascript - 从 react js中的javascript对象列表中删除重复值

javascript - ReactJS:如何不断检查本地存储中的 token 是否已过期?

javascript - 以编程方式在 material-ui Autocomplete TextField 中设置值

react-native - 如何在 native 中更改<FlatList/>的高度?

reactjs - 无法显示条目: TypeError: Cannot read properties of undefined (reading 'map' ) in reactjs