«Обработчик клика [Нарушение] занял 43665мс» в vue. js - PullRequest
0 голосов
/ 01 марта 2020

Может быть, это сделать, что взял xxMS. Что происходит? Каждый раз, когда я закрываю страницу печати, я получаю это сообщение в консоли chrome. Кто-нибудь исправляет эту проблему?

<button @click="printScreen()" type="button">print</button>

<div ref="printparts">test</div>

    methods: {
          printScreen() {
            let value = this.$refs.printparts;
            let printPage = window.open();
            printPage.focus();
            printPage.document.body.insertAdjacentHTML('afterbegin', value.outerHTML);
            printPage.print();
            printPage.close();
          },
        },

Ответы [ 2 ]

1 голос
/ 01 марта 2020

Причина, по которой вы получаете это предупреждение о нарушении, скорее всего, потому что обработчик событий не возвращается, пока страница печати не будет закрыта. Таким образом, если вы нажмете кнопку, откроется страница печати, то ничего не произойдет, пока страница печати не закроется, и функция вернется.

0 голосов
/ 07 марта 2020

Я использовал onmouseover, а Chrome не показывает нарушение, но в Performance сказано предупреждение. enter image description here

printScreen() {
        let value = this.$refs.printparts;
        let printPage = window.open();
        printPage.focus();
        printPage.document.body.insertAdjacentHTML('afterbegin', value.outerHTML);
        printPage.onmouseover = function() {
          printPage.print();
          printPage.close();
        };
        return false;
      },
...