Load applicatiebronnen en vermijd runtime pakketverrassingen
LOAD(types, [callback], [clear=true]) is de applicatielader. types is een array of kommagescheiden lijst van resourcegroepen (zoals config, definitions, controllers, actions, modules, resources, jsonschemas, flowstreams). Zonder lijst laadt hij de normale applicatiegroepen. Hij pakt eerst bundles uit en wist standaard tijdelijke bestanden. Gebruik hem in een zelfstandig script wanneer je applicatiedefinities nodig hebt zonder een HTTP-listener te starten; roep hem niet herhaaldelijk aan in een request-handler.
NPMINSTALL(name, [callback]) controleert het pakket onder CONF.$nodemodules: een reeds geïnstalleerde overeenkomende versie keert terug zonder npm uit te voeren. Anders roept hij daar npm install aan. De naam moet een vertrouwde vaste applicatiewaarde zijn, nooit request-invoer. Implementeer afhankelijkheden via een vastgepind pakketmanifest of lockfile wanneer reproduceerbaarheid telt. De test hieronder dekt alleen de tak van het geïnstalleerde pakket: hij downloadt, upgradet of certificeert geen pakket van derden.
exports.install = function() {
ROUTE('GET /loader-contract/', function($) { $.json({ available: typeof LOAD === 'function' && typeof NPMINSTALL === 'function' }); });
};