WindowSharedStorage: run() 方法

實驗性: 這是一項實驗性技術
在生產中使用此技術之前,請仔細檢查瀏覽器相容性表格

WindowSharedStorage 介面的 run() 方法會執行一個在當前源的 SharedStorageWorklet 中註冊的模組裡註冊的 run 操作

注意: Run output gate 旨在作為一種通用的方法來處理某些共享儲存資料。

語法

js
run(name)
run(name, options)

引數

name

一個字串,代表在共享儲存 worklet 模組中註冊的操作的名稱。它必須與在 SharedStorageWorkletGlobalScope.register() 中註冊操作時給定的名稱相匹配。

options 可選

一個選項物件,可以包含以下屬性:

data 可選

一個物件,表示執行操作所需的任何資料。

keepAlive 可選

一個布林值。如果設定為 true,則關聯 worklet 的 SharedStorageWorkletGlobalScope 將保持活動狀態,並且該操作可以再次執行。因此,您需要為每個非最後一次執行的操作都將 keepAlive 設定為 true。預設值 false 表示該操作執行後 SharedStorageWorkletGlobalScope 將終止,並且無法再次執行。

返回值

一個 Promise,它將以 undefined 解析。

異常

TypeError

在以下情況下丟擲

  • 尚未透過 addModule() 新增 worklet 模組。
  • 共享儲存被停用(例如透過瀏覽器設定)。
  • 呼叫站點未在成功的 隱私沙盒註冊流程中包含共享儲存 API。

示例

js
async function measureUniqueReach() {
  // Load the Shared Storage worklet
  await window.sharedStorage.worklet.addModule("reach-measurement-worklet.js");

  // Run the reach measurement operation
  await window.sharedStorage.run("reach-measurement", {
    data: { contentId: "1234" },
  });
}

measureUniqueReach();

有關此示例的完整說明,請參閱 Unique reach measurement。有關更多示例,請參閱 Shared Storage API

規範

此特性似乎未在任何規範中定義。

瀏覽器相容性

另見