RequireJS - NodeJS

Адаптер Node можно использовать вместе с реализацией Require и пути поиска Node. Если RequireJS не использует конфигурацию модуля, вы можете использовать существующие модули на основе Node, не меняя их. Вы можете установить пакеты узлов в каталог node_modules проекта с помощью команды npm.

Node будет загружать модули только с локального диска, а параметры конфигурации, такие как карта, пакеты, пути и т. Д., Будут применяться только тогда, когда модуль загружается с помощью RequireJS.

Установка узла

Вы можете установить адаптер узла, используя следующую команду, которая установит файлы последней версии:

npm install requirejs

Вы также можете установить узел следующими способами:

  • Вы можете скачать r.js по этой ссылке и сохранить его в папке своего проекта.

  • Получить исходный код из r.js хранилища или установить его через узел dist.js .

Использование узла

Чтобы использовать узел, вам необходимо иметь require ('requirejs') и переместить функцию require в конфигурации в файл main.js верхнего уровня.

Например -

var requirejs = require('requirejs');

requirejs.config({
   //load the mode modules to top level JS file 
   //by passing the top level main.js require function to requirejs
   nodeRequire: require
});

requirejs(['name1', 'name2'],
   function (name1, name2) {
      //by using requirejs config, name1 and name2 are loaded
      //node's require loads the module, if they did not find these
   }
);

Сборка узловых модулей с помощью AMD или RequireJS

Вы можете заставить модуль кода работать с RequireJS и Node, не требуя от пользователей библиотеки, а затем использовать пакет amdefine для выполнения этой работы.

Например -

if (typeof define !== 'function') {
   var define = require('amdefine')(module);
}

define(function(require) {
   var myval = require('dependency');

   //The returned value from the function can be used 
   //as module which is visible to Node.
   return function () {};
});

Оптимизатор как узел узла

Модуль Node использует оптимизатор RequireJS в качестве метода оптимизации , используя вызов функции вместо использования инструмента командной строки.

Например -

var requirejs = require('requirejs');

var config = {
   baseUrl: '../directory/scripts',
   name: 'main',
   out: '../build/main-built.js'
};

requirejs.optimize(config, function (buildResponse) {

   //The text output of the modules specify by using buildResponse 
   //and loads the built file for the contents
   //get the optimized file contents by using config.out 
   var contents = fs.readFileSync(config.out, 'utf8');
}, function(err) {
   //code for optimization err callback
});