@analytics/amplitude

中文文档
0.1.3发布于 2021/10/30MITESM + CJS零依赖近 30 天下载 3.8万

Amplitude integration for 'analytics' module

原始使用文档
文档目录8 节
  1. Installation
  2. How to use
  3. Platforms Supported
  4. Browser usage
  5. Browser API
  6. Configuration options for browser
  7. Additional examples
  8. Setting Custom Session Ids

Amplitude

This library exports the amplitude plugin for the analytics package.

This analytics plugin will load Amplitude integration into your application.

For more information see the docs.

Click to expand

Installation

npm install analytics
npm install @analytics/amplitude

How to use

The @analytics/amplitude package works in the browser. To use, install the package, include in your project and initialize the plugin with analytics.

Below is an example of how to use the browser plugin.

import Analytics from 'analytics'
import amplitudePlugin from '@analytics/amplitude'

const analytics = Analytics({
  app: 'awesome-app',
  plugins: [
    amplitudePlugin({
      apiKey: 'token',
      // See options at https://bit.ly/3dRdZnE
      options: {
        trackingOptions: {
          ip_address: false
        }
      }
    })
  ]
})

/* Track a page view */
analytics.page()

/* Track a custom event */
analytics.track('cartCheckout', {
  item: 'pink socks',
  price: 20
})

/* Identify a visitor */
analytics.identify('user-id-xyz', {
  firstName: 'bill',
  lastName: 'murray'
})

After initializing analytics with the amplitudePlugin plugin, data will be sent into Amplitude whenever analytics.page, analytics.track, or analytics.identify are called.

See additional implementation examples for more details on using in your project.

Platforms Supported

The @analytics/amplitude package works in the browser

Browser usage

The Amplitude client side browser plugin works with these analytic api methods:

Browser API

import Analytics from 'analytics'
import amplitudePlugin from '@analytics/amplitude'

const analytics = Analytics({
  app: 'awesome-app',
  plugins: [
    amplitudePlugin({
      apiKey: 'token',
      // See options at https://bit.ly/3dRdZnE
      options: {
        trackingOptions: {
          ip_address: false
        }
      }
    })
  ]
})

Configuration options for browser

Optiondescription
apiKey
required - string
Amplitude project API key
options
required - object
Amplitude SDK options
initialSessionId
required - string
Set initial session ID

Additional examples

Below are additional implementation examples.

Using in HTML

Below is an example of importing via the unpkg CDN. Please note this will pull in the latest version of the package.

<!DOCTYPE html>
<html>
  <head>
    <title>Using @analytics/amplitude in HTML</title>
    <script src="https://unpkg.com/analytics/dist/analytics.min.js"></script>
    <script src="https://unpkg.com/@analytics/amplitude/dist/@analytics/amplitude.min.js"></script>
    <script type="text/javascript">
      /* Initialize analytics */
      var Analytics = _analytics.init({
        app: 'my-app-name',
        plugins: [
          undefined({
            apiKey: 'token',
            // See options at https://bit.ly/3dRdZnE
            options: {
              trackingOptions: {
                ip_address: false
              }
            }
          })
        ]
      })

      /* Track a page view */
      analytics.page()

      /* Track a custom event */
      analytics.track('cartCheckout', {
        item: 'pink socks',
        price: 20
      })

      /* Identify a visitor */
      analytics.identify('user-id-xyz', {
        firstName: 'bill',
        lastName: 'murray'
      })
    </script>
  </head>
  <body>
    ....
  </body>
</html>

Using in HTML via ES Modules

Using @analytics/amplitude in ESM modules.

<!DOCTYPE html>
<html>
  <head>
    <title>Using @analytics/amplitude in HTML via ESModules</title>
    <script>
      // Polyfill process.
      // **Note**: Because `import`s are hoisted, we need a separate, prior <script> block.
      window.process = window.process || { env: { NODE_ENV: 'production' } }
    </script>
    <script type="module">
      import analytics from 'https://unpkg.com/analytics/lib/analytics.browser.es.js?module'
      import undefined from 'https://unpkg.com/@analytics/amplitude/lib/analytics-plugin-amplitude.browser.es.js?module'
      /* Initialize analytics */
      const Analytics = analytics({
        app: 'analytics-html-demo',
        debug: true,
        plugins: [
          undefined({
            apiKey: 'token',
            // See options at https://bit.ly/3dRdZnE
            options: {
              trackingOptions: {
                ip_address: false
              }
            }
          })
          // ... add any other third party analytics plugins
        ]
      })

      /* Track a page view */
      analytics.page()

      /* Track a custom event */
      analytics.track('cartCheckout', {
        item: 'pink socks',
        price: 20
      })

      /* Identify a visitor */
      analytics.identify('user-id-xyz', {
        firstName: 'bill',
        lastName: 'murray'
      })
    </script>
  </head>
  <body>
    ....
  </body>
</html>

Setting Custom Session Ids

You can set a session id like so

import Analytics from 'analytics'
import amplitudePlugin from '@analytics/amplitude'

const analytics = Analytics({
  app: 'awesome-app',
  plugins: [
    amplitudePlugin({
      apiKey: 'token',
    })
  ]
})

// Run custom method https://getanalytics.io/plugins/writing-plugins/#adding-custom-methods
analytics.plugins['amplitude'].setSessionId('your-id')

Or via the initialSessionId config value

import Analytics from 'analytics'
import amplitudePlugin from '@analytics/amplitude'

const analytics = Analytics({
  app: 'awesome-app',
  plugins: [
    amplitudePlugin({
      apiKey: 'token',
      initialSessionId: 'xyz-123'
    })
  ]
})

版本与发布记录

@analytics/amplitude 共发布 8 个版本,首次发布于 2021/04/09;过去 12 个月发布了 0 个版本。

版本发布日期距今
0.1.3latest2021/10/305 年前
0.1.22021/10/255 年前
0.1.12021/10/255 年前
0.1.02021/10/245 年前
0.0.42021/10/245 年前
0.0.32021/04/205 年前

关于 @analytics/amplitude 的常见问题

@analytics/amplitude 是什么?

Amplitude integration for 'analytics' module

如何安装 @analytics/amplitude?

在项目目录运行 npm install @analytics/amplitude,或使用 pnpm add / yarn add / bun add。

@analytics/amplitude 支持 TypeScript 吗?

该包的 package.json 没有声明类型入口。需要类型提示时,可以在 npm 上查找社区维护的 @types/analytics__amplitude 是否存在。

@analytics/amplitude 支持 ESM 还是 CommonJS?

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

@analytics/amplitude 可以商用吗?

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

@analytics/amplitude 的下载量有多少?

根据 npm 官方下载统计,@analytics/amplitude 在 2026/10/06 – 2026/11/04 这 30 天内被下载 37,700 次,日均约 1,257 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入,适合横向比较热度,不能直接等同于使用人数。

@analytics/amplitude 还在维护吗?

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