Окно не определено при сборке Гэтсби - PullRequest
0 голосов
/ 21 ноября 2018

Я пытаюсь интегрировать амплитуду-j с Реактом и Гэтсби.Все выглядит хорошо при работе с gatsby developer, так как это происходит внутри браузера, но при попытке сборки gatsby я получаю следующую ошибку, потому что сборка Gatsby происходит на сервере, где у нас нет объекта окна:

WebpackError: окно не определено

ampitude.js: 2428 ~ / ampitude-js / ampitude.js: 2428: 2

Вот мой модуль амплитуды:

import amplitude from 'amplitude-js';

amplitude.getInstance().init('API-KEY', null, {
  // optional configuration options
  saveEvents: true,
  includeUtm: true,
  includeReferrer: true,
});

Сборка Gatsby не работает: окно не определено.

Если я не использую эту часть где-либо в проекте, ошибка указывает на эту часть:

if (windowLocalStorageAvailable()) {
  localStorage = window.localStorage;
} else if (window.globalStorage) { // <- here

  // Firefox 2-3 use globalStorage
  // See https://developer.mozilla.org/en/dom/storage#globalStorage
  try {
...