2 回答

TA貢獻(xiàn)1921條經(jīng)驗(yàn) 獲得超9個(gè)贊
因?yàn)槟銖膩頉]有打電話this.modal
你必須打電話給它。 this.modal()
這是一個(gè)需要調(diào)用的函數(shù)。沒問題,它發(fā)生了。?

TA貢獻(xiàn)1851條經(jīng)驗(yàn) 獲得超4個(gè)贊
第一個(gè)問題是你沒有執(zhí)行模態(tài)函數(shù)。
其次,您調(diào)用該函數(shù)onPress并且不傳遞對函數(shù)的引用,而是將其包裝在一個(gè)arrow function onPress={() => this.setState({ isVisible: true })}
我會(huì)建議解壓Modal到一個(gè)新的組件,包括它,只有當(dāng)state.isVisible是true
const Modal = () => <h3>Modal</h3>;
export default class HomeScreen extends Component {
state = {
isVisible: false
}
render() {
return (
<View>
<Button onPress={() => this.setState({ isVisible: true })}>Click me</Button>
{this.state.isVisible && <Modal />}
</View>
);
}
}
添加回答
舉報(bào)