#node.js #gatsby #netlify #logrocket
#node.js #gatsby #netlify #logrocket
Вопрос:
Я пытаюсь установить LogRocket в свое приложение Gatsby JS, которое я размещаю на Netlify.
Я хочу записывать сеансы только в процессе производства, и по большей части все работает отлично, но я заметил, что когда я отправляю новую сборку в Netlify, LogRocket всегда регистрирует новый сеанс в процессе сборки.
Есть ли способ запретить LogRocket регистрировать новый сеанс во время процесса сборки Gatsby / Netlify?
В настоящее время я инициализирую сеанс в onClientEntry
сборке следующим gatsby-browser.js
образом:
exports.onClientEntry = () => {
if (typeof window !== "undefined" amp;amp; process.env.NODE_ENV === "production") {
LogRocket.init('<project_id>');
}
}
Ответ №1:
Попробуйте onInitialClientRender
API:
exports.onInitialClientRender = () => {
if (typeof window !== "undefined" amp;amp; process.env.NODE_ENV === "production") {
LogRocket.init('<project_id>');
}
}
Из документов:
onInitialClientRender
{ Function }
Вызывается, когда на клиенте выполняется начальный (но не последующий) рендеринг приложения Gatsby.
Комментарии:
1. Это сработало! Документация Gatsby для
onInitialClientRender
немного расплывчата, но, похоже, это правильный API браузера для инициализации этого