RequireJS bedingte Abhängigkeiten

8

Ich versuche ein Modul mit bedingten Abhängigkeiten zu definieren (abhängig vom Test von Modernizr). Ich habe etwas getan, das funktioniert, aber fühle mich hacky.

Können Sie mir sagen, was Sie denken und ob es einen besseren Weg gibt? Danke.

%Vor%     
karellm 07.12.2011, 22:38
quelle

3 Antworten

2

Sie versuchen, diese Datei nur zu laden, wenn ein Browser etwas nicht unterstützt, laden Sie mehr Javascript, um es zu einem Arbeitstyp-Szenario zu machen?

Oder ich könnte sehen, dass Sie versuchen, dasselbe Feature mit verschiedenen Methoden zu implementieren, je nachdem, ob die Methode verfügbar ist oder nicht, und dass Sie basierend auf dieser Bedingung zusätzliches oder alternatives JavaScript laden möchten.

Dennoch, hier mit mir bloß, mache ich Annahmen und ich habe das nicht genau versucht, aber die Theorie macht vielleicht Sinn:)

Vielleicht etwas in der Art von

%Vor%

Ich weiß nicht, vielleicht nur eine Frage des Stils oder der Vorliebe, dies ist nur eine andere Art, das Gleiche zu tun, aber ohne das Abhängigkeiten-Array, dem ich einfach abgeneigt bin (lol) obwohl es wirklich nichts falsches ist Wenn Sie die Datei nur bedingt laden möchten und der Rest des Codes gleich ist,

Ich habe mehr darüber nachgedacht, Implementierungen basierend auf einer Bedingung aufzuteilen und dann unterschiedliche bedingte Anforderungen pro Implementierung zu haben, immer noch die ganze Meinung, wie? :)

    
PJUK 10.12.2011 14:24
quelle
1

Modernizr ist derzeit nicht in eine 'amd'-Definitionsfunktion eingebunden. Um modernizr als Modul für require.js zu laden, müssten Sie moderniszr.js wie folgt hacken:

FÜR modernizr.js

SCHNITT:

%Vor%

ERSETZEN MIT:

%Vor%

FÜGEN SIE DIESEN NACH UNTEN HINZU

%Vor%     
steve 22.05.2012 16:23
quelle
1

Sie können tatsächlich zwei Dinge tun, es hängt davon ab, ob Sie eine globale Variable hinzufügen wollen oder nicht. In jedem Fall erstellen Sie eine Datei namens moderniszr.js und wenn Sie eine globale Variable erstellen möchten

%Vor%

kannst du dann einfach

%Vor%

Wenn Sie keine globale Variable hinzufügen möchten, sollten Sie

ausführen %Vor%

und dann

%Vor%     
Nicola Peluchetti 25.06.2012 17:11
quelle