Реакция на печать: как изменить состояние в onAfterPrint при закрытии окна печати - PullRequest
0 голосов
/ 30 мая 2019

Я использую библиотеку реагирования на печать, и с ее помощью я хочу изменить состояние при закрытии окна печати. ​​

Когда я нажимаю кнопку отмены, она работает нормально.Однако, если я нажму кнопку «X» (выход), произойдет сбой.

У меня будет следующий код.

<ReactToPrint
  trigger={() => (
    ...
  )}
  content={() => ...}
  onBeforePrint={() => { this.setState({ printState: true}) }}
  onAfterPrint={() => { this.setState({ printState: false }) }}  
  closeAfterPrint
/>

Вот сообщение об ошибке

Uncaught Invariant Violation:Превышена максимальная глубина обновления.Это может произойти, когда компонент повторно вызывает setState внутри componentWillUpdate или componentDidUpdate.React ограничивает количество вложенных обновлений для предотвращения бесконечных циклов.

1 Ответ

0 голосов
/ 30 мая 2019

Возможно, это не так, но попробуйте использовать onAfterPrint={() => this.handlePrintAfter()}

...