2016-03-25 8 views
0

Ich arbeite an einer kleinen Angular App, die das Draggable-Plugin von GreenSock verwendet. Alles funktioniert wie erwartet; Allerdings verwende ich ESLint und beschweren sich, dass TweenMax und Draggable nicht definiert sind.ESLint beschweren sich über GreenSock in Angular App

74:7 error "Draggable" is not defined            
133:7 error "TweenMax" is not defined 
133:78 error "Bounce" is not defined 

Ich habe Funktion, die auch ein verschiebbares Element in meinem Controller und ein paar Tweens im Controller einrichtet:

// Set up GreenSock Draggable dial 
function setUpDraggableElement(element) { 
    Draggable.create(element, { 
    type: 'rotation', 
    onPress: onDialTouch, 
    onRelease: onDialRelease, 
    onDrag: onRotateDial, 
    liveSnap: function(endValue) { 
     return Math.round(endValue/20) * 20; 
    } 
    }); 
} 

... 

TweenMax.to(angular.element('.selector'), 0.5, { scale: 1.1, ease: Bounce.easeOut}); 

ich Angular bin neu; Muss ich sie in irgendeine Art von Direktive oder etwas verpacken?

Antwort

1

Wenn Ihre Anwendung wie erwartet funktioniert, glaube ich, dass dies nur ein Problem mit ESLint ist.

GSAP definiert "Draggable", "TweenMax" und "Bounce" in einer Datei (oder jeder in einer eigenen Datei) und Sie verwenden diese Namen in einer anderen Datei. ESLint betrachtet die Dateien einzeln, so dass es warnt, dass die Namen nicht definiert wurden.

Sie müssen ESLint benachrichtigen, dass "Draggable", "TweenMax" und "Bounce" globale Variablen sind (außerhalb der Datei definiert). Etwas wie folgt aus:

/*global Draggable, TweenMax, Bounce*/ 
Verwandte Themen