React Profiler - запустить профилирование и перезагрузить страницу? - PullRequest
0 голосов
/ 06 ноября 2018

Используя React dev Tools и Profiler, есть ли способ запустить профилировщик и перезагрузить страницу? Аналогично тому, как в инструментах разработчика Chrome есть кнопка для запуска профилирования и перезагрузки страницы.

В настоящее время, если я запускаю профилировщик и обновляю страницу, он останавливает профилировщик.

1 Ответ

0 голосов
/ 17 декабря 2018

Я не знаю, можете ли вы нажать «запись» и перезагрузить страницу, но если вы хотите измерить загрузку страницы, я думаю, что вы можете добавить профилировщик в свой код, а затем консоль записать результаты. Примерно так:

logProfile = (id, phase, actualTime, baseTime, startTime, commitTime, interactions) => {
  console.log(`--------- ${id}'s ${phase.toUpperCase()} phase: ---------`);
  console.log(`Time spent rendering ${actualTime} ms`); // Time spent rendering the Profiler and its descendants for the most recent "mount" or "update" render.
  console.log(`Base time: ${baseTime} ms`); // Duration of the most recent render time for each individual component within the Profiler tree.
  console.log(`React render start time (since component mounted): ${startTime} ms`); // When the Profiler began the recently committed render.
  console.log(`React render commit time (since component mounted): ${commitTime} ms`); // The time at which the current commit took place.
  console.log(interactions);
};

А потом в вашем рендере:

<Profiler id="entities" onRender={this.logProfile}><Page /></Profiler>
...