Biblioteksmoduler i webbtillägg
En biblioteksmodul är en del av återanvändbar kod som tillhandahålls av ett tillägg som släpps ut i taggens körningsbibliotek i Adobe Experience Platform. Det här biblioteket körs sedan på klientens webbplats. En gesture
-händelsetyp har till exempel en biblioteksmodul som körs på klientens webbplats och identifierar användargester.
Biblioteksmodulen är strukturerad som en CommonJS-modul. I en CommonJS-modul är följande variabler tillgängliga för användning:
require
Du har tillgång till en require
-funktion:
- Kärnmoduler från taggar. Dessa moduler kan nås via
require('@adobe/reactor-name-of-module')
. Mer information finns i dokumentet om tillgängliga kärnmoduler. - Andra moduler i tillägget. Alla moduler i tillägget kan nås via en relativ sökväg. Den relativa sökvägen måste börja med
./
eller../
.
Exempel:
var cookie = require('@adobe/reactor-cookie');
cookie.set('foo', 'bar');
module
Det finns en kostnadsfri variabel med namnet module
som gör att du kan exportera modulens API.
Exempel:
module.exports = function(…) { … }
exports
exports-variable
Det finns en kostnadsfri variabel med namnet exports
som gör att du kan exportera modulens API.
Exempel:
exports.sayHello = function(…) { … }
Det här är ett alternativ till module.exports
, men användningen är mer begränsad. Läs Om module.exporting och exporting in node.js för att få en bättre förståelse för skillnaderna mellan module.exports
och exports
och de relaterade grottorna med exports
. Gör livet enklare när du är osäker och använd module.exports
i stället för exports
.
Körning och cachning
När taggens körningsbibliotek körs "installeras" modulerna omedelbart och deras export cachelagras. Anta följande modul:
console.log('runs on startup');
module.exports = function(settings) {
console.log('runs when necessary');
}
runs on startup
loggas omedelbart medan runs when necessary
endast loggas när den exporterade funktionen anropas av taggmotorn. Det kan vara onödigt för just din modul, men du kan dra nytta av detta genom att göra de inställningar som behövs innan du exporterar funktionen.