A Adobe Experience Platform Launch foi reformulada como um conjunto de tecnologias de coleta de dados no Adobe Experience Platform. Como resultado, várias alterações de terminologia foram implementadas na documentação do produto. Consulte o seguinte documento para obter uma referência consolidada das alterações de terminologia.
Este documento aborda o formato do módulo de biblioteca para extensões da Web. Se você estiver desenvolvendo uma extensão de borda, consulte o manual sobre formatação de módulos de extensão de borda.
Um módulo de biblioteca consiste em código reutilizável fornecido por uma extensão emitida na biblioteca de tempo de execução de tag na Adobe Experience Platform. Essa biblioteca é executada no site do cliente. Por exemplo, um tipo de evento gesture
terá um módulo de biblioteca que será executado no site do cliente e detectará os gestos do usuário.
O módulo da biblioteca está estruturado como um módulo CommonJS. Em um módulo CommonJS, as seguintes variáveis estão disponíveis para uso:
Uma função require
está disponível para você acessar:
require('@adobe/reactor-name-of-module')
. Consulte o documento nos módulos principais disponíveis para obter mais informações../
ou ../
.Exemplo de uso:
var cookie = require('@adobe/reactor-cookie');
cookie.set('foo', 'bar');
Uma variável livre chamada module
está disponível e permite exportar a API do módulo.
Exemplo de uso:
module.exports = function(…) { … }
Uma variável livre chamada exports
está disponível e permite exportar a API do módulo.
Exemplo de uso:
exports.sayHello = function(…) { … }
É uma alternativa para module.exports
, mas tem uso mais limitado. Leia Entender module.exports e exportações em node.js para compreender melhor as diferenças entre module.exports
e exports
e as limitações relacionadas ao uso de exports
. Na dúvida, torne sua vida mais fácil e use module.exports
em vez de exports
.
Quando a biblioteca de tempo de execução de tag for executada, os módulos serão "instalados" imediatamente e suas exportações serão armazenadas em cache. Presumindo o seguinte módulo:
console.log('runs on startup');
module.exports = function(settings) {
console.log('runs when necessary');
}
runs on startup
serão registrados imediatamente, enquanto runs when necessary
serão registrados somente depois que a função exportada for chamada pelo mecanismo de tag. Embora possa ser desnecessário para a finalidade de seu módulo específico, você pode aproveitar isso executando qualquer configuração necessária antes de exportar a função.