0.0.7 • Published 6 months ago

@virage-dev/nuxt-yandex-metrika v0.0.7

Weekly downloads
-
License
MIT
Repository
-
Last release
6 months ago

Yandex Metrika для Nuxt 3

npm version npm downloads License Nuxt

Установка

  1. Добавьте зависимость @virage-dev/nuxt-yandex-metrika
# npm
npm install --save-dev @virage-dev/nuxt-yandex-metrika

# pnpm
pnpm add -D @virage-dev/nuxt-yandex-metrika
  1. Добавьте модуль @virage-dev/nuxt-yandex-metrika в файл конфигурации nuxt.config.ts
export default defineNuxtConfig({
  modules: [
    // другие модули...
    "@virage-dev/nuxt-yandex-metrika"
    ],
});

Настройки

После установки модуля в конфигурации nuxt появится ключ yandexMetrika

Параметры

ПараметрdefaultТипОписание
idundefinedstringid метрики
debugprocess.env.NODE_ENV !== "production"booleanКонтролирует работу логирования методов
delay0numberОткладывает подключение скрипта метрики (ms)
cdnfalsebooleanИспользовать ли CDN версию скрипта метрика
verificationnullstring \| null???
options{ webvisor: true }optionsНастройки метрики

В дев сборке реальных запросов в метрику происходить не будет

Параметр options - настройки метрики

NameDefault valueTypeDescription
accurateTrackBouncetrueBooleanNumberAccurate bounce rate The parameter can accept these values: true — Enable the accurate bounce rate, with a non-bounce event registered after 15000 ms (15 s). false — Don't enable the accurate bounce rate. (integer) — Enable the accurate bounce rate. Non-bounce events are recorded after ms.
childIframefalseBooleanWhether to record iframe contents without a tag in a child window
clickmaptrueBooleanWhether to collect data for a click map
deferfalseBooleanWhether to disable automatically sending data during tag initialization
ecommercefalseBooleanStringArrayCollect data for e-commerce — Ecommerce. true — Enable e-commerce data collection. Data is transmitted via a JavaScript array named dataLayer in the global namespace (window.dataLayer) false — Disable Ecommerce data collection. (String) — Enable Ecommerce data collection. Data is transmitted via a JavaScript array named in the global namespace (window.) (Array) — Enable Ecommerce data collection. Data is transmitted via a JavaScript
paramsObjectArraySession parameters transmitted during tag initialization To transmit session parameters at any other time, use the params method
userParamsObjectParameters of site users that are transmitted when initializing the tag To transmit user parameters at any other time, use the userParams method
trackHashfalseBooleanHash tracking in the browser's address bar
trackLinkstrueBooleanTrack clicks on outbound links
trustedDomainsArrayIndicates a trusted domain for recording the contents of a child iframe. Contains the domain address of the parent window
type0NumberTag type. 1 for YAN
webvisorfalseBooleanWhether to use Session Replay
triggerEventfalseBooleanWhether to check if the tag is ready

For more information:

Параметры по умолчанию

{
  // Ниже приведены настройки по умолчанию
  yandexMetrika: {
    id: undefined,
    debug: process.env.NODE_ENV !== "production",
    delay: 0,
    cdn: false,
    verification: null,
    options: {
        accurateTrackBounce: true,
        childIframe: true,
        clickmap: true,
        defer: false,
        ecommerce: false,
        trackHash: false,
        trackLinks: true,
        webvisor: false,
        triggerEvent: false,
        sendTitle: true,
    },
  }
}

Динамический id метрики

Если ваш id метрики меняется в зависимости от условий, используйте функцию init, чтобы проинициализировать метрику с нужным id. Желательно вызывать инициализацию внутри плагина Nuxt.

export default defineNuxtPlugin({
  setup() {
    if (import.meta.client) {
      const { init } = useYandexMetrika();
      init(getMetrikaId());
    }
  },
});
<script setup lang="ts">

const { reachGoal } = useYandexMetrika();

</script>

<template>
    <button @click="reachGoal('click', {})">click</button>
</template>

Разработка / Поддержка

Используйте pnpm

# Установка зависимостей
pnpm install

# Подготовить песочницу (обязательно перед первым запуском)
pnpm run dev:prepare

# Запуск песочницы
pnpm run dev


# ESLint
pnpm run lint

# Vitest
pnpm run test
pnpm run test:watch

# Сделать релиз
pnpm run release
0.0.7

6 months ago

0.0.6

6 months ago

0.0.5

7 months ago

0.0.4

8 months ago

0.0.3

8 months ago

0.0.2

8 months ago

0.0.1

8 months ago