Oi,
Não vejo nenhuma implementação da API da área de transferência, com os objetos DataTransfer, DataTransferItemList e DataTransferItemListItem. Existe algum plano que o apoie?
Uma solicitação de pull adicionando suporte para isso definitivamente seria bem-vinda.
Existe algum plano para oferecer suporte ao DataTransfer? Ajudaria com um problema que estou testando eventos onDrop usando react-testing-library
https://github.com/kentcdodds/react-testing-library/issues/339
Não é uma implementação completa para ter certeza .. mas dependendo do que você deseja do objeto DataTransfer
, você pode encontrar boas informações sobre onde procurar para começar a implementar isso / hackear para suas necessidades em: https:/ /github.com/jsdom/jsdom/issues/1272#issuecomment -486088445
Não é uma implementação completa para ter certeza .. mas dependendo do que você quer do objeto
DataTransfer
, você pode encontrar boas informações sobre onde procurar para começar a implementar isso / hackear para suas necessidades em: #1272 ( Comente)
Eu tentei zombar do ClipBoardEvent da mesma forma que você fez
import { implementation } from 'jsdom/lib/jsdom/living/events/Event-impl';
// @ts-ignore
class ClipboardEventMock extends implementation implements ClipboardEvent {
public readonly clipboardData: DataTransfer | null;
public constructor(type: string, eventInitDict?: ClipboardEventInit) {
super(type, eventInitDict);
this.clipboardData = eventInitDict?.clipboardData || null;
}
}
Object.defineProperty(window, 'ClipboardEvent', {
writable: true,
value: jest.fn().mockImplementation((type, eventInitDict) => new ClipboardEventMock(type, eventInitDict)),
});
mas obtive um resultado com fio silencioso TypeError: Class constructor EventImpl cannot be invoked without 'new'
.
Você já viu isso?
@icy0307 Em vez de acessar jsdom/lib
que não é compatível, você deve criar uma nova simulação para cada janela. Então você poderia dizer extends window.Event
.
Comentários muito úteis
Existe algum plano para oferecer suporte ao DataTransfer? Ajudaria com um problema que estou testando eventos onDrop usando react-testing-library
https://github.com/kentcdodds/react-testing-library/issues/339