@adv-re/segment-wrapper

中文文档
5.1.4发布于 2026/04/27ISCTypeScriptESM + CJS近 30 天下载 5328

部分库上方的现代类型脚本抽象层

中文使用文档
文档目录21 节
  1. 特征
  2. 安装
  3. 快速启动
  4. 基本用途(ESM/TypeScript)
  5. UMD 用法 (浏览器)
  6. 配置
  7. API 参考
  8. 核心方法
  9. 公用事业
  10. 高级特性
  11. 中间软件系统
  12. TCF/GDPR 遵守情况
  13. 运动跟踪
  14. 移徙指南
  15. 从 v4 移到 v5
  16. 从@s-ui/ 组件- wrapper 迁移
  17. 浏览器支持
  18. 套装大小
  19. 发展
  20. 文档
  21. 许可证

@adv-re/ spement- wrapper (英语)

现代TypeScript抽象层位于分会场分析库上方,内置支持分会场集成,Adobe分析,TCF遵守,以及同意管理.

特征

  • ✨ 类型脚本支持 - 全面安全和情报
  • 🔒 TCF/GDPR 遵守情况 - 透明度和同意框架支助
  • 🎯 Adobe 分析 - Adobe 访问者 API 整合
  • 🔌 中间软件系统 - 广泛的源头和目的地中间软件
  • 📊 运动跟踪 - UTM和STC参数解析和转发
  • 🆔 通用标识 - 跨域用户识别
  • 📦 多个格式 - 建立无害环境管理、共同JS和UMD
  • 🧪 测试良好 - 综合测试覆盖率

安装

npm install @adv-re/segment-wrapper

快速启动

基本用途(ESM/TypeScript)

import analytics from '@adv-re/segment-wrapper'
import {initConfig} from '@adv-re/segment-wrapper'

// Initialize configuration (optional - for custom settings)
initConfig({
  userIdPrefix: 'fc-',
  adobeMarketingCloudOrgId: 'YOUR_ORG_ID@AdobeOrg',
  sendXandrId: true,
  defaultProperties: {
    platform: 'web'
  }
})

// Track events
await analytics.track('Button Clicked', {
  buttonName: 'Sign Up',
  location: 'Homepage'
})

// Track page views
await analytics.page('Homepage', {
  title: 'Welcome to Our Site'
})

// Identify users
await analytics.identify('user-123', {
  email: '[email protected]',
  plan: 'premium'
})

UMD 用法 (浏览器)

<script src="https://cdn.segment.com/analytics.js/v1/YOUR_WRITE_KEY/analytics.min.js"></script>
<!-- Use specific version (recommended for production) -->
<script async src="https://unpkg.com/@adv-re/segment-wrapper@latest"></script>

<script>
  // Access via window.sui.analytics
  window.sui.analytics.track('Page Viewed', {
    page: 'home'
  })
</script>

版本选项 :

<!-- Specific version (recommended for production) -->
<script async src="https://unpkg.com/@adv-re/[email protected]"></script>

<!-- Latest version (use only for development) -->
<script async src="https://unpkg.com/@adv-re/segment-wrapper"></script>

配置

import {initConfig} from '@adv-re/segment-wrapper'

initConfig({
  // Segment API Key
  key: 'xOoVeB57iXT3X1ehtxLk0Ipte3eIYTZw',

  // User ID Configuration
  userIdPrefix: 'fc-',

  // Adobe Analytics
  adobeMarketingCloudOrgId: 'YOUR_ORG_ID@AdobeOrg',

  // Xandr ID
  sendXandrId: true,

  // Default Properties (added to all track calls)
  defaultProperties: {
    platform: 'web',
    app: 'my-app'
  },

  // Middlewares
  experimentalPageDataMiddleware: false
})

见 配置指南 用于所有可用的选项.

API 参考

核心方法

  • analytics.track(event, properties?, context?, callback?) - 跟踪自定义事件
  • analytics.page(name?, properties?, context?, callback?) - 音轨页面浏览
  • analytics.identify(userId, traits?, options?, callback?) - 识别用户
  • analytics.reset() - 重新设置用户识别

公用事业

  • getConfig(key) - 获得配置值
  • setConfig(key, value) - 设定配置值
  • clearConfig() - 清除所有配置
  • getUniversalId() - 获取当前通用ID
  • getAdobeMCVisitorID() - 得到Adobe营销云访问者的身份
  • getAdobeVisitorData() - 获取 Adobe 访问者 API 数据
  • getCampaignDetails() - 从 URL 获取 UTM/STC 竞选参数

见 API 参考 详细文件.

高级特性

中间软件系统

区段-收发器包括一个强大的中件系统,允许您在发送前修改跟踪数据:

// Middlewares are automatically registered on initialization
// They enrich events with:
// - User traits (anonymous ID, user ID)
// - Campaign context (UTM parameters, STC tracking)
// - Page referrer information
// - Screen dimensions
// - Default context properties

见 中件文档 更多细节.

TCF/GDPR 遵守情况

对透明度和同意框架的内置支持v2:

import {getGdprPrivacyValue, checkAnalyticsGdprIsAccepted} from '@adv-re/segment-wrapper'

// Get current GDPR consent state
const gdprValue = await getGdprPrivacyValue()
// { analytics: 'accepted', advertising: 'declined' }

// Check if analytics tracking is allowed
const canTrack = checkAnalyticsGdprIsAccepted(gdprValue)

事件会根据用户的同意自动被屏蔽或修改.

见 TCF 文档 更多细节.

运动跟踪

自动 UTM 和 STC 活动参数解析 :

import {getCampaignDetails} from '@adv-re/segment-wrapper'

// Get campaign details from URL
const campaign = getCampaignDetails()
// Returns: { utm_source: 'google', utm_medium: 'cpc', ... }

// Campaign parameters are automatically added to all events
// via the campaignContext middleware

特征 :

  • UTM 参数解析( utm source, utm 中型, utm 校园等)
  • STC 格式支持( Customal Adeventa 格式 :?stc=medical- source- Campaign)
  • 自动转发到区段( 以及GA4 等下游目的地)

移徙指南

从 v4 移到 v5

见 升级到 v5 指南 关于升级到第5版的分步指示.

V5 中的关键变化 :

  • GA4 现在由分块设备模式管理(没有更直接的gtag.js初始化)
  • 删除 googleAnalyticsMeasurementId, (中文(简体) ), googleAnalyticsConfig等配置选项
  • 作为事件属性而不是直接调用 gtag 模式
  • 运动跟踪仍然得到支持(UTM/STC参数)

从@s-ui/ 组件- wrapper 迁移

见 移徙指南 关于遗产迁移的分步指示 @s-ui/segment-wrapper 软件包.

关键更改 :

  • 软件包名称 : @s-ui/segment-wrapper → @adv-re/segment-wrapper
  • 带有类型定义的完整类型脚本支持
  • 现代建设系统(Tsup 而不是自宽)
  • 改善摇树和捆绑大小

浏览器支持

  • Chrome/Edge(后2个版本)
  • Firefox(最后2个版本)
  • Safari(最后两个版本)
  • iOS Safari(后2个版本)

套装大小

  • 无害环境管理:~34KB(最小)
  • 通用JS:~36KB(最小化)
  • UMD:~15KB(最小化)

发展

# Install dependencies
npm install

# Run tests
npm test

# Build
npm run build

# Build UMD bundle
npm run build:umd

# Lint
npm run lint

文档

许可证

公务员制度委员会

版本与发布记录

@adv-re/segment-wrapper 共发布 24 个版本,首次发布于 2026/01/12;过去 12 个月发布了 24 个版本。

版本发布日期距今
5.1.4latest2026/04/276 个月前
5.1.32026/04/236 个月前
5.1.22026/04/236 个月前
5.1.12026/04/136 个月前
5.1.02026/04/136 个月前
5.0.22026/03/247 个月前

其他发布通道:beta → 4.36.2-beta.3,beta-v5 → 5.0.0-beta.2。

关于 @adv-re/segment-wrapper 的常见问题

@adv-re/segment-wrapper 是什么?

部分库上方的现代类型脚本抽象层

如何安装 @adv-re/segment-wrapper?

在项目目录运行 npm install @adv-re/segment-wrapper,或使用 pnpm add / yarn add / bun add。

@adv-re/segment-wrapper 支持 TypeScript 吗?

支持。包内自带 TypeScript 类型声明(package.json 声明了 types 入口),安装后即可获得类型提示,无需再安装 @types 包。

@adv-re/segment-wrapper 支持 ESM 还是 CommonJS?

同时提供 ES Module 与 CommonJS 入口,import 和 require() 都可以使用,打包工具会自动选择合适的版本。

@adv-re/segment-wrapper 可以商用吗?

@adv-re/segment-wrapper 使用 ISC 许可。宽松许可:允许商业使用、修改和再分发,通常只需在分发时保留原版权与许可声明。以上为概括,不构成法律意见,请以许可原文为准。

@adv-re/segment-wrapper 的下载量有多少?

根据 npm 官方下载统计,@adv-re/segment-wrapper 在 2026/10/05 – 2026/11/03 这 30 天内被下载 5,328 次,日均约 178 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入,适合横向比较热度,不能直接等同于使用人数。

@adv-re/segment-wrapper 还在维护吗?

最新版本 5.1.4 发布于 2026/04/27(6 个月前);至今共发布 24 个版本,其中过去 12 个月发布了 24 个;首次发布于 2026/01/12。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。