Aus dem Quellcode require.js (Zeile 1902):
/**
* The function that handles definitions of modules. Differs from
* require() in that a string for the module should be the first argument,
* and the function to execute after dependencies are loaded should
* return a value to define the module corresponding to the first argument's
* name.
*/
Das define()
Funktion akzeptiert zwei optionale Parameter (eine Zeichenfolge, die eine Modul-ID und ein Array erforderlicher Module darstellt) und einen erforderlichen Parameter (eine Factory-Methode).
Die Rückgabe der Factory-Methode MUSS die Implementierung für Ihr Modul zurückgeben (auf die gleiche Weise wie das Modulmuster ).
Die require()
Funktion muss die Implementierung eines neuen Moduls nicht zurückgeben.
Wenn define()
Sie verwenden, fragen Sie etwas wie "Führen Sie die Funktion aus, die ich als Parameter übergebe, und weisen Sie der übergebenen ID alle Rückgaben zu, überprüfen Sie jedoch zuvor, ob diese Abhängigkeiten geladen sind" .
Wenn require()
Sie etwas sagen wie "Die Funktion, die ich übergebe, hat die folgenden Abhängigkeiten, überprüfen Sie, ob diese Abhängigkeiten geladen sind, bevor Sie sie ausführen" .
In dieser require()
Funktion verwenden Sie Ihre definierten Module, um sicherzustellen, dass die Module definiert sind, aber Sie definieren dort keine neuen Module.