React Native应用程序在状态更改时变得无响应/崩溃

时间:2017-03-10 11:34:57

标签: react-native

我正在使用React-Native为iPad构建一个应用程序,当用户点击一个按钮,然后会出现一个模态。

Modal开始隐藏生命,然后父组件设置state布尔变量以确定是否显示模态。

这是我的代码,请忽略尚未使用的导入。

import React, { Component } from "react";
import { StyleSheet, View, Modal, Text, Button } from "react-native";

const PopupModal = props => {
  console.log(props);
  return (
    <Modal transparent={true} visible={props.visible}>
      <View
        style={{
          backgroundColor: "rgba(0,0,0,.5)",
          flex: 1,
          justifyContent: "center",
          alignItems: "center"
        }}
      >
        <View
          style={{
            height: 386,
            width: 355,
            backgroundColor: "#FFF",
            borderRadius: 10,
          }}
        >
          <Button onPress={() => {}} title="Save" />
        </View>
      </View>
    </Modal>
  )
}

export default PopupModal;

这是父组件

class Home extends Component {
  constructor() {
    super();
    this.state = {
      videos: [],
      offset: {
        y: 0,
        x: 0
      },
      showPopupModal: false,
      selectedVideo: {
        id: null,
        reflectiveStatement: null,
      }
    };
  }
  editStatement = (id, reflectiveStatement) => {
    this.setState({
      showPopupModal: true,
      selectedVideo: {
        id,
        reflectiveStatement,
      }
    })
  }
  render() {
    return (<PopupModal visible={this.state.showPopupModal} />
  }
}

export default Home;

this.state.showPopupModaltruefalse,但每次点击按钮时,editStatement我的应用都会冻结。

1 个答案:

答案 0 :(得分:-2)

这是React 0.42.0的问题,此问题自0.42.2

起解决