React Native-无效状态更新警告

时间:2019-03-05 17:48:53

标签: reactjs react-native

以下代码生成警告'无法在未安装的组件中执行反应状态更新。这是空操作,但表明您的应用程序内存泄漏。'

我是RN的新手-第一次构建时一直在工作-我无法理解为什么会产生此错误,因为在componentDidMount之前我不要求进行任何stae更改-任何人都可以提供任何提示吗?

Class CheckIn extends React.Component {
  constructor(props) {
    super(props);
    this.state = {
      venue: undefined,
      checkinTime:0,
      currentLocation:null,
    };
  }
  getCurrentCoordinates = () => {
    navigator.geolocation.getCurrentPosition(
      position => {
        const currentLongitude = JSON.stringify(position.coords.longitude);
        const currentLatitude = JSON.stringify(position.coords.latitude);
        const currentLocation = currentLatitude + ',' + currentLongitude;
        this.setState({ currentLocation });
        this.getCurrentTime();
      },
      error => Alert.alert(error.message),
      { enableHighAccuracy: true, timeout: 20000, maximumAge: 1000 }
    );
  };
  minutes_with_leading_zeros=(dt)=>
  {
    return (dt.getMinutes() < 10 ? '0' : '') + dt.getMinutes();
  }
  getCurrentTime = () => {
    const dt = new Date();
    const dtcur = dt.getHours() +':' +this.minutes_with_leading_zeros(dt);

    this.setState({
      checkinTime: dtcur,
    });

  };

  componentDidMount(){
    this.getCurrentCoordinates();
    this.getCurrentTime();
  }

0 个答案:

没有答案