2017-06-14 1 views
0

J'ai une application angulaire dans laquelle je dois déclencher explicitement un événement de traînée. J'utilise AOT - ngc et rollup.Syntaxe DragScript de TextScript

let event1 = new DragEvent(); 
 
event1.initDragEvent('dragstart', true, true, null, null, null, null, null, null, null, null, null, null, null, null, null); 
 
this._renderer.invokeElementMethod(this._elementRef.nativeElement, 'dispatchEvent', [event1]); 
 
    

Le code compile bien et la page se charge dans le navigateur. Mais lors de l'exécution, je reçois cette erreur:

Failed to construct 'DragEvent': 1 argument required, but only 0 present.

Maintenant, je change le code pour ressembler à ceci:

let event1 = new DragEvent('dragstart'); 
 
this._renderer.invokeElementMethod(this._elementRef.nativeElement, 'dispatchEvent', [event1]);

Maintenant, le compilateur jette et erreur en disant:

Expected 0 arguments, but got 1.

Comment puis-je résoudre ce problème?

Répondre

0

La réponse est assez simple.

let event1 = new Event('dragstart'); 
1

Essayez d'utiliser,

this._renderer.invokeElementMethod(this._elementRef.nativeElement, 'dispatchEvent', [new DragEvent('dragstart', true, true)]); 
+0

Cela n'a pas fonctionné. Erreur ==> Expected 0 arguments, mais a obtenu 3. –

+0

Essayez l'événement d'initialisation en utilisant: 'object.createEvent (event1);' plutôt que d'utiliser: 'new DragEvent();' –

+0

Je ne suis pas sûr de ce que vous voulez dire. Qu'est-ce qu'un objet - l'élément natif? À quoi event1 devrait-il être instancié? Pouvez-vous s'il vous plaît fournir quelques lignes de code? –