我有这两个功能。我试图将事件“e”传递给promise,但在“handleOnClick”函数中,e为null,因为它超出了“this”范围。所以我把事件分配给了“this.clickEvent”并转而通过了,但现在我得到了关于synethetic事件和event.persist()的长信息。
我该如何解决这个问题?
handleClick( e ) {
this.clickEvent = e;
somePromise( param1, param2 ).then( result => {
handleOnClick( this.clickEvent, param1, param2 );
});
}
handleOnClick( e, param1, param2 ) {
if ( e.shiftKey ) { // get the below message in console here }
}
警告:出于性能原因,会重复使用此合成事件。如果您看到这个,那么您将在已发布/无效的合成事件上访问属性
shiftKey
。这被设置为null。如果必须保留原始合成事件,请使用event.persist()。有关更多信息,请参见fb.me/react-event-pooling。