У меня есть компонент, который использует файл, который должен быть указан во время componentDidMount.
У меня есть две страницы, которые используют этот компонент.Он отлично работает на первой странице, но как только я переключаюсь на другую страницу, он вообще не вызывается.И это не зависит от требуемой страницы: она всегда работает в первый раз, но не во второй раз.
Вот код:
componentDidMount() {
try {
require('./data');
} catch (e) {
// Do nothing.
// No error, even on the second time
}
}
Вызывается componentDidMount (сделалнекоторый console.log, чтобы убедиться), и файл найден (также проверенный на console.log).
Вот файл data.js:
console.log(window); // display something the first time, but nothing happens on the second time
if (typeof window !== 'undefined') {
const d3 = require('d3');
const Datamap = require('datamaps');
d3.selection.prototype.moveToFront = function() {
return this.each(function() {
this.parentNode.appendChild(this);
});
};
(function() { /* some code */ } )
}
Любая идея на этот счетодин ?Одно из моих предположений, если оно не было размонтировано и перемонтировано правильно, но не представляю, как я могу это проверить или исправить