2016-06-05 3 views
0

versuchen, vertraut mit require JS - aber ich verstehe nicht, was ist falsch mit diesem Setup - kann nicht die $ (Dokument) .foundation(), weil $ ist undefiniert.

requirejs.config({ 
    baseUrl: '/js', 
    paths: { 
     jQuery:   'script.php?file=jquery.min.js', 
     foundation:  'script.php?file=foundation.min.js' 
    } 
}); 

require(['jQuery'], function($) { 
    require(['foundation'], function() { 
     $(document).foundation(); // $ undefined? 
    }); 

    // ... more code with different require sections 
}); 
+0

Mögliche Duplikat [? RequireJS - ist jQuery Groß- und Kleinschreibung] (http://stackoverflow.com/questions/20552662/requirejs-is- jquery-case-sensitive) – Louis

Antwort

0

Betrachten Sie Ihre Logik in eine separate Datei zu bewegen, zum Beispiel app.js

Dann wie requirejs(['app']) den require(['jQuery'], function($) { ... Aufruf etwas ändern.

In app.js sollten Sie ein Modul, so etwas wie definieren:

define(['jQuery', 'foundation'], function($, foundation) { 
    $(document).foundation(); 
}); 
+0

würde es auch funktionieren, wenn ich nur schreibe: 'definieren (['jQuery', 'Stiftung'], Funktion ($) { $ (Dokument) .foundation(); }); ' weil ich die Grundlage var nicht brauche - oder muss es wie dein Weg schreiben? ja – heppi75

+0

Theoretisch gibt eine –

+0

gilad versuchen - wenn ich fragen darf Ihnen eine weitere Frage besser zu verstehen: sind beide Versionen arbeiten: '// Version 1 definieren ([‚jQuery‘,‚Fundament‘], Funktion ($, foundation) { $ (Dokument) .foundation(); }); define (['jQuery', 'fancybox'], Funktion ($, fancybox) { $ (". Fancybox"). Fancybox(); }); // Version 2 definieren ([ 'jQuery'], function ($) { \t definieren ([ 'Fundament'], function ($) { \t $ (document) .foundation(); \t}) ; ({ "fancybox." \t \t $() fancybox()} [ 'fancybox'], function ($)); }); ' – heppi75