Moduli libreria nelle estensioni web

Nota: Adobe Experience Platform Launch viene riclassificato come una suite di tecnologie di raccolta dati nell’Experience Platform. Queste modifiche verranno implementate in tutta la documentazione del prodotto nelle prossime settimane. Fare riferimento al seguente documento per un riferimento consolidato delle modifiche terminologiche.

IMPORTANTE

Questo documento descrive il formato dei moduli libreria per le estensioni web. Se stai sviluppando un’estensione Edge, consulta invece la guida sulla formattazione dei moduli per estensioni Edge.

Un modulo libreria è un codice riutilizzabile fornito da un’estensione emessa all’interno della libreria runtime di Adobe Experience Platform Launch (libreria che viene eseguita sul sito web del client). Ad esempio, un tipo di evento gesture avrà un modulo libreria che verrà eseguito sul sito web del client e rileverà i movimenti dell’utente.

Il modulo libreria è strutturato come modulo CommonJS. In un modulo CommonJS, sono disponibili le seguenti variabili:

require

È disponibile una funzione require che consente di accedere a:

  1. Moduli core forniti da Platform Launch. È possibile accedere a questi moduli utilizzando require('@adobe/reactor-name-of-module'). Per ulteriori informazioni, consulta il documento sui moduli core disponibili.
  2. Altri moduli all’interno dell’estensione. È possibile accedere a qualsiasi modulo dell’estensione tramite il relativo percorso. Il percorso relativo deve iniziare con ./ oppure ../.

Esempio di utilizzo:

var cookie = require('@adobe/reactor-cookie');
cookie.set('foo', 'bar');

module

È disponibile una variabile gratuita denominata module che consente di esportare l’API del modulo.

Esempio di utilizzo:

module.exports = function(…) { … }

exports

È disponibile una variabile gratuita denominata exports che consente di esportare l’API del modulo.

Esempio di utilizzo:

exports.sayHello = function(…) { … }

Si tratta di un’alternativa a module.exports, ma il suo utilizzo è più limitato. Consulta Informazioni su “module.exports” ed “exports” in node.js per una comprendere meglio le differenze tra module.exports e exports e le relative avvertenze sull’utilizzo di exports. In caso di dubbi, utilizza module.exports anziché exports.

Esecuzione e caching

Quando viene eseguita la libreria runtime di Platform Launch, i moduli vengono immediatamente “installati” e le relative esportazioni vengono memorizzate nella cache. Nel seguente modulo di esempio:

console.log('runs on startup');

module.exports = function(settings) {
  console.log('runs when necessary');
}

runs on startup verrà registrato immediatamente, mentre runs when necessary verrà registrato solo dopo che la funzione esportata verrà richiamata dal motore di Platform Launch. Anche se potrebbe non essere necessario per lo scopo del modulo, è possibile trarne vantaggio eseguendo eventuali configurazioni necessarie prima di esportare la funzione.

In questa pagina