면책 조항 : iPhone 에뮬레이터 atm에서만 테스트 할 수 있습니다. React-Native 0.49 Mac OSX 높음 SierraReact-Native Controlled Modal Freezing
상위 구성 요소에서 해당 소품을 가져 오는 모달을 만들고 싶습니다. 로 아래 는 :
const Modal = ({ showModal, closeModal }) => (
<Modal
animationType="slide"
transparent={false}
visible={showModal}
onRequestClose={() => {alert("Modal has been closed.")}}
>
<View style={{marginTop: 22}}>
<Text>Hello World!</Text>
<TouchableHighlight onPress={() => closeModal() }>
<Text>Hide Modal</Text>
</TouchableHighlight>
</View>
</Modal>
);
이 부모의 예는 다음과 같습니다
<View>
<Modal
showModal={this.state.showModal}
closeModal={() => this.setState({ showModal: false })}
/>
<ScrollView>
{elements.map(element => {
return (
<Card key={element.id}>
<Badge onPress={() => this.setState({ showModal: true })>
<Text>Show</Text>
</Badge>
</Card>
);
})}
</ScrollView>
</View>
나는 쇼 모달 버튼을 클릭하면 모달 팝 - 업 예상대로하지만 closeModal을 클릭하면 다음 모달가 사라지고 다시 다시 나타납니다 그러나 이번에는 UI와 상호 작용할 수 없으며, UI가 고정되어있는 것처럼 보입니다. 그런 다음 에뮬레이터를 다시 시작해야합니다.
I 복사 바로 반작용 - 기본 문서에서 코드를 붙여 넣을 경우 : https://facebook.github.io/react-native/docs/modal.html 모달가 잘 작동합니다. 그것은 자체 포함 된 구성 요소입니다.
도움/조언을 많이 주시면 감사하겠습니다.
감사합니다, 에미 르 당신의 부모 구성 요소 내부
답장을 보내 주셔서 감사합니다. 위의 작업을 수행 한 후 모달이 닫히면 다른 UI가 열리고 UI와 상호 작용할 수 없기 때문에 동일한 동작을 얻습니다. 변경 사항을 추가했습니다. –
eGlu