如何将异步存储值直接分配给状态



我需要以下类似的东西但是我无法获得价值

state = {
  phone: async () => await AsyncStorage.getItem('phone')
}
constructor(props){
  super(props)
  alert(this.state.phone);
}

但这不起作用。

i khow如果在componentdidmount中调用它,然后将值传递给状态,则有效但是我需要以上类似的东西。

这有效:

import React, { Component } from 'react';
import logo from './logo.svg';
import './App.css';
import { AsyncStorage } from 'AsyncStorage';
class App extends Component {
  state = {};
  constructor(props) {
      super(props);
  }
  componentDidMount(){
      this.getItem().then((phone)=>{
        this.setState({
          phone
        });
      })
  }
  async getItem(){
    return await AsyncStorage.getItem('phone');
  }
  async setItem(){
    await AsyncStorage.setItem('phone','919303580');
  }
  render() {
    return (
      <div className="App">
        <p>Phone here:</p>
        {this.state.phone && <p>{this.state.phone}</p>}
        <button onClick={this.setItem.bind(this)}>Click me</button>
      </div>
    );
  }
}
export default App;

相关内容

  • 没有找到相关文章

最新更新