Kann mir jemand helfen, input.focus() in Enzym zu testen. Ich schreibe das Skript mit react.My Code ist unten.Testen von input.focus() in Enzym
public inputBox: any;
componentDidUpdate =() => {
setTimeout(() => {
this.inputBox.focus();
}, 200);
}
render() {
return (
<div>
<input
type = 'number'
ref = {element => this.inputBox = element } />
</div>
);
}
Woher kommt 'eventStub()'? –
'eventStub' ist alles, was Ihren Test bestanden hat. In diesem Beispiel können Sie davon ausgehen, dass die Komponente 'FocusingInput' das 'mouseEnter'-Ereignis überwacht und wenn dieses Ereignis ausgelöst wird (' wrapper.simulate (' mouseEnter ', ...) 'tut das), kann der Event-Handler einige Operationen für das Ereignis ausführen wie 'preventDefault'. Damit dies funktioniert, müssen Sie einen Ereignis-Stub vorbereiten, der diese Operation verarbeitet, und diesen Stub als zweites Argument von 'simulate' senden. Hier ist ein Beispiel für meinen [Ereignis-Stub] (https://gist.github.com/mckomo/128bdb43434749ca1a2299d456ed7d7c). – mckomo