2016-06-06 5 views
2

Enzyme 테스트 유틸리티로 키 이벤트를 사용하려했지만 성공하지 못했습니다. 나는React.JS Enzyme의 키 이벤트 테스트

combo.find(".searchInput").simulate("keydown", { keyCode: 40 }); 

combo.find(".searchInput").simulate("keydown", { target: { keyCode: 40 } }); 

을 시도했지만 아무도 제대로 작동하지 않습니다. Enzyme을 사용하여 주요 사건을 시뮬레이트하는 올바른 구문을 아는 사람이 있습니까?

답변

3

두 가지 잠재적 인 문제가 있습니다. 첫 번째는 "keydown"대신 "keyDown"을 camelCase해야한다는 것입니다. 두 번째는 확인중인 키 코드에 관한 더 많은 데이터를 전달해야 할 수도 있습니다.

combo.find(".searchInput").simulate("keyDown", { target: { 
    keyCode: 40, 
    which: 40, 
    key: "Down Arrow" // not sure if this is right, you might need to debug to inspect the real value in console 
} }); 
+0

나는이 목록에서 키 이름을 찾았습니다. [link] (http://www.cambiaresearch.com/articles/15/javascript-key-codes) 그 중 하나가 작동하지 않습니다 – darkjoker

+0

이 표적은 여기에 필요하지 않습니다. https://stackoverflow.com/a/47639464/3460363 – Insomniac631