Web擴充功能中的共用模組

NOTE
Adobe Experience Platform Launch已經過品牌重塑,現在是Adobe Experience Platform中的一套資料收集技術。 因此,所有產品文件中出現了幾項術語變更。 如需術語變更的彙整參考資料,請參閱以下文件

共用模組是一種可讓您與其他擴充功能通訊的機制。例如,A 擴充功能可以非同步方式載入資料,並透過 Promise 讓該資料供 B 擴充功能使用。

JavaScript 實作會使用 turbine 自由變數提供的 getSharedModule 方法將所有共用模組具現化。

共用模組即使從未從其他擴充功能內部呼叫,也會包含在標籤程式庫中。 為了避免無謂增加程式庫大小,您對於要公開為共用模組的項目應謹慎處理。

共用模組沒有檢視元件。

開發您自己的標籤擴充功能時,您可以定義要由擴充功能提供的任何共用模組。 例如,您可以建立以非同步方式載入使用者 ID 的模組,然後透過 Promise 與任何其他擴充功能共用該使用者 ID:

var userIdPromise = new Promise(/* load user ID, then resolve promise */);
module.exports = userIdPromise;

擴充功能資訊清單,您必須提供此共用模組的名稱。 如果您將其命名為 user-id-promise,其他擴充功能將可透過下列方式存取此共用模組:

var userIdPromise = turbine.getSharedModule('user-extension', 'user-id-promise');

共用模組可以是您通常可從 CommonJS 模組匯出的任何項目 (例如函數、物件、字串、數字或布林值)。

recommendation-more-help
12b4e4a9-5028-4d88-8ce6-64a580811743