jsPDF - .addHTML не является функцией - PullRequest
0 голосов
/ 01 июня 2018

Я пытаюсь преобразовать мою HMTL-страницу (форму) в pdf, используя библиотеку jsPDF, вот что я сделал:

var pdf = new jsPDF();
var btn = document.getElementById("btn");

btn.addEventListener('click', function(){
    pdf.addHTML(document.body,function() {
        pdf.save('test.pdf');
    });
});

«btn» - это кнопка, которую я нажимаю, чтобыполучить PDF.У меня проблема в том, что когда я нажимаю эту кнопку, я получаю TypeError: pdf.addHTML () не является функцией в сообщении HMTLButtonElement. .Просматривая несколько сообщений с одинаковыми темами, я не вижу, что мне не хватает:

  • Я скачал библиотеку jsPDF
  • Я скачал rasterizehtml в моей папке npm (Я также пытался использовать html2canvas, для того же результата)
  • Я использую jspdf.debug.js по ссылке, которую я мог найти везде
  • У меня есть файл addhtml.js в моем jsPDFбиблиотека

Вот мои сценарии, если это может сделать его понятнее:

<script src="C:/Users/trist/AppData/Roaming/npm/node_modules/rasterizehtml/dist/rasterizeHTML.allinone.js"></script> 
<script src="https://cdnjs.cloudflare.com/ajax/libs/jspdf/1.3.5/jspdf.debug.js"></script>
<script src="js/jsPDF-1.3.2/jspdf.js"></script>

Кто-нибудь знает, как я могу сделать эту работу?

1 Ответ

0 голосов
/ 01 июня 2018

Вероятно, потому, что вы вызываете две разные версии jsPDF.Попробуйте

<script src="https://cdnjs.cloudflare.com/ajax/libs/jspdf/1.4.0/jspdf.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/rasterizehtml/1.3.0/rasterizeHTML.allinone.js"></script>
...