Ответы пользователя по тегу Фронтенд
  • Как в проекте на nuxt.js 2 добавить Яндекс метрику и отправлять setUserId?

    Вы можете использовать официальный модуль для Yandex Metrika, который поддерживает отправку setUserId и других целей.

    Для начала, установите модуль в свой проект:

    npm install --save @nuxtjs/yandex-metrika

    Затем добавьте его в nuxt.config.j:
    modules: [
      ['@nuxtjs/yandex-metrika', {
        id: 'ваш_идентификатор', // замените на свой идентификатор Яндекс.Метрики
        clickmap: true,
        trackLinks: true,
        accurateTrackBounce: true,
        webvisor: true,
        setUserId: true // включает отправку setUserId
      }]
    ]

    Теперь вы можете использовать $yandexMetrika объект в своих компонентах и страницах, чтобы отправлять цели и устанавливать пользовательский идентификатор:
    export default {
      mounted() {
        // отправка цели
        this.$yandexMetrika.reachGoal('my-goal')
    
        // установка пользовательского идентификатора
        this.$yandexMetrika.setUserParams({
          userId: '12345'
        })
      }
    }
    Обратите внимание, что установка пользовательского идентификатора может быть задержана из-за асинхронной загрузки счетчика Метрики, поэтому рекомендуется использовать ее только после того, как счетчик будет полностью загружен.
    Ответ написан
  • Как записать информацию в json внутри приложения Vue.js?

    Привет! Для записи информации в JSON файл внутри приложения Vue.js, можно использовать стандартный объект JavaScript JSON и метод stringify. А для чтения JSON файла, можно использовать метод fetch.

    Пример записи объекта в JSON файл:

    methods: {
      saveData() {
        const data = {name: 'John', age: 30};
        const jsonData = JSON.stringify(data);
        
        fetch('/path/to/save/file.json', {
          method: 'POST',
          headers: {
            'Content-Type': 'application/json'
          },
          body: jsonData
        })
        .then(response => {
          console.log('Data saved:', response);
        })
        .catch(error => {
          console.error('Error:', error);
        });
      }
    }


    Пример чтения JSON файла:

    methods: {
      loadData() {
        fetch('/path/to/load/file.json')
        .then(response => response.json())
        .then(data => {
          console.log('Data loaded:', data);
        })
        .catch(error => {
          console.error('Error:', error);
        });
      }
    }


    Обратите внимание, что в примерах используются асинхронные операции fetch. Если вы используете браузеры, которые не поддерживают fetch, можете использовать библиотеку для AJAX, например, axios.
    Ответ написан
    2 комментария