Heim  >  Artikel  >  Web-Frontend  >  Detaillierte Beispiele für CommonJS

Detaillierte Beispiele für CommonJS

零下一度
零下一度Original
2017-07-21 09:16:361967Durchsuche

1. CommonJS

  • wird für die serverseitige modulare Programmierung verwendet

  • Eine Datei ist Ein Modul, die Methode require wird zum Laden von Modulen verwendet, führt sie aus und gibt schließlich das Objekt module.exports in der Datei zurück.

  • require liest .js-Dateien Standardmäßig muss require (Modulname) nicht mit einem Suffix geschrieben werden;

  • wird synchron geladen, da die auf der Serverseite geladenen Module im Allgemeinen lokal sind ; aber auf der Client-Seite führt ein zu großes Modul dazu, dass die Seite „vorgetäuscht“ wird.

  • Das Attribut module.exports stellt die externe Ausgabeschnittstelle dar aktuelles Modul. Wenn andere Dateien das Modul laden, lesen sie der Einfachheit halber tatsächlich Exports, Exports verweist auf module.exports; >

  • exports.xxx entspricht dem Hinzufügen von Attributen zum exportierten Objekt, die für das aufrufende Modul sichtbar sind. ;
  • exports = entspricht dem Neuzuweisen von Exporten, was zu Kürzungen führt Die Zuordnung zu module.exports wird deaktiviert, und das aufrufende Modul kann nicht auf die Objekte und Eigenschaften von exports zugreifen : require([module], function(module){});
  • Modul definieren: define([module], function(module){});

    require.js (eine Tool-Bibliothek für die modulare Front-End-Verwaltung) implementiert js-Dateien. Das asynchrone Laden verhindert, dass Webseiten die Reaktion verlieren; die Verwaltung von Abhängigkeiten zwischen Modulen erleichtert das Schreiben und Warten von Code.
  • Abhängigkeitsvorpositionierung, Modulabhängigkeitsblöcke so früh wie möglich ausführen, die Ausführungsreihenfolge ist nicht unbedingt zuerst 1 und dann 2;
  • Nicht standardmäßige Module laden
  • 3. CMD
  • require.config({
        baseUrl: "js/lib",
        paths: {"jquery": "jquery.min",
        "underscore": "underscore.min",
        "backbone": "backbone.min"  },
        shim: {'underscore':{
                exports: '_'   },
       'backbone': {
        deps: ['underscore', 'jquery'],
        exports: 'Backbone'   }
     }
    });
    // exports值(输出的变量名),表明这个模块外部调用时的名称;deps数组,表明该模块的依赖性
    Sea.js

Die Abhängigkeit liegt in der Nähe und das abhängige Modul wird nur dann ausgeführt, wenn es wirklich benötigt wird und die Reihenfolge festgelegt ist
  • define(function(require, exports, module){
        var a = require('a');
        a.foo();
    };
  • Der größte Unterschied zwischen AMD und CMD ist die Abhängigkeit. Der Ausführungszeitpunkt des Moduls ist unterschiedlich, nicht der Ladezeitpunkt oder die Lademethode.
  • AMD-Abhängigkeitsfront. Am Ende kann js leicht erkennen, wer das abhängige Modul ist. Während CMD auf nahegelegene Abhängigkeiten angewiesen ist, müssen Sie das Modul verwenden, um es in eine Zeichenfolge umzuwandeln und zu analysieren, um zu wissen, welche Module abhängig sind >

Das obige ist der detaillierte Inhalt vonDetaillierte Beispiele für CommonJS. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn