Saya menguji dengan ReactJS dan menggunakan Material-Ui. Untuk Komponen Uji kecil saya menggunakan Dialog. Saya menggunakan kode yang sama seperti pada contoh Anda, tetapi ini sepertinya tidak berhasil. Mungkin ada bug atau dokumen yang tidak cukup jelas bagi saya.
Ini Kodenya
const {Dialog, FlatButton} = MUI;
Home = React.createClass({
getInitialState() {
return {
welcomeModal: false
};
},
openWelcomeDialog() {
this.setState({welcomeModal:true});
},
closeWelcomeDialog(buttonClicked) {
console.log('Close The Welcome Dialog.');
this.setState({welcomeModal:false});
},
render() {
let modalActions = [
{ text: 'Cancel' }
];
return (
<div>
<h1>Welcome to my app</h1>
<a href="#" onClick={this.openWelcomeDialog}>Open the Welcome Modal</a>
<Dialog
title="Welcome Modal"
actions={modalActions}
autoDetectWindowHeight={true}
autoScrollBodyContent={true}
open={this.state.welcomeModal}
onRequestClose={this.closeWelcomeDialog}>
<div style={{height: '1000px'}}>
Really long content
</div>
</Dialog>
</div>
);
}
});
Apa yang terjadi:
Ketika saya mengklik tautan, acara akan diaktifkan dan modal dibuka dengan cara yang benar. Tetapi: Tidak masalah pada apa yang saya klik jika di latar belakang atau di Tombol Batal: Modal tidak akan ditutup dan juga console.log tidak akan diaktifkan ... jadi: Metode tidak akan dipanggil! Dalam contoh saya, tidak mungkin untuk menutup modal.
Pertama, apakah Anda menelepon injectTapEventPlugin()
?
Oh .. 'rly ? Sekarang berhasil. Saya mencoba mencari masalah untuk sementara waktu sekarang ...
Jadi jawabannya adalah: Tidak, saya tidak menyebutnya. Tidak melihat ini dirujuk dalam Dokumen Material-Ui. Terima kasih @olivietassinari !
Saya memiliki masalah yang sama, dan saya menggunakan injectTapEventPlugin()
. Dan semua hal lain yang terkait dengan acara tampaknya berfungsi. Haruskah saya memeriksa sesuatu yang lain?
Masalahnya hampir sama dengan topik pembuka, di mana pun saya mengklik - itu tidak menyala.
Komentar yang paling membantu
Saya memiliki masalah yang sama, dan saya menggunakan
injectTapEventPlugin()
. Dan semua hal lain yang terkait dengan acara tampaknya berfungsi. Haruskah saya memeriksa sesuatu yang lain?Masalahnya hampir sama dengan topik pembuka, di mana pun saya mengklik - itu tidak menyala.