为什么科尔多瓦不保存 jspdf?

why cordova dont save jspdf?

该代码只能通过从浏览器启动它来工作,而在 phone 中,该按钮不会生成 pdf ... 我声明我最近一直在使用 Cordova,也许我不能很好地设置插件 .. 任何信息,即使是微不足道的,都可能有用。 购物车 table 是由 javascript 代码生成的,该代码在另一个 hatml 页面上使用 dom不知道要插入什么.. 也可能指的是哪个插件.. 在此先感谢大家

<strike>
 <HTML>
    <HEAD>
       <LINK REL="stylesheet" TYPE="text/css" href="style.css"> 
               
     
       <script src="https://cdnjs.cloudflare.com/ajax/libs/jspdf/1.3.2/jspdf.min.js"></script>
      <script src="js/carrello.js"></script>
       
    </HEAD>
    
    <BODY>
        <div>
          <h2>Il tuo Ordine</h2>
                 
         <script language=javascript >
  
            carrello = eval(localStorage.carrello);
            document.write("<div id=elenco>");
            tabella(); 
            document.write("</div>");
            totali();
            
         </script>
       </div>
    <br>
    <br>
       <a class="pTab" href=prodotti.html style="text-decoration: none;">Torna ad ordinare</a>
       <br>
       <br> 
       <a class="pTab" href=javascript:svuota() style="text-decoration: none;">Svuota ordine</a>
     <br>
     <br>
     <br>
        <button onclick="scaricaPdf()">crea PDF</button>
    <br>
    <br>
   
      <a href="index.html" style="text-decoration: none;">
        <div class="mybutton1">HOME</div>
    </a>
    </BODY>
      <script> 
       
function scaricaPdf() {
       var doc = new jsPDF();

       var spesaTotale= document.getElementById("totale").innerHTML;
       var x=20; //variabile per i margini
       var y=35; //variabile per le righe
       doc.setFontSize(15);
       doc.text(20,20,'Questo è il tuo ordine:');
       doc.setFontSize(10);
       doc.text(20,30,'Codice'+'  Descrizione Prodotto' +'  Prezzo'+'  Quantità'+'   Totale'); 
       for(var i=0; i<carrello.length; i++){
            y=y+5;
            var codiceProdotto=carrello[i].codice;
            doc.text(x,y,' '+codiceProdotto);
            var descrizioneProdotto = carrello[i].descr;
            doc.text(33,y,''+descrizioneProdotto);
            var prezzoProdotto = carrello[i].prezzo;
            doc.text(68,y,''+prezzoProdotto);
            var quantitaProdotto =carrello[i].qnt;
            doc.text(83,y,''+quantitaProdotto);
            var totProdEuro=carrello[i].prezzo * carrello[i].qnt;
            doc.text(100,y,''+totProdEuro);
         }
       
       
       doc.text(20,200, 'Totale        '+spesaTotale);
       doc.save('Ordine.pdf');
}

       </script>
      
      <script src="cordova.js"></script>
      <script src="js/index.js"></script>
    </HTML>
    

</strike>

您不能使用 JSPDF 在手机上保存文件,至少据我所知。 根据我的经验,我会尝试在线查看 Cordova 文档。 例如:https://cordova.apache.org/docs/en/latest/reference/cordova-plugin-file/#write-to-a-file-

如果您想使用文件插件,请确保先安装它并阅读文档! https://cordova.apache.org/docs/en/latest/reference/cordova-plugin-file/index.html#installation

好像还有Cordova generator plugin,不过我没用过https://www.npmjs.com/package/cordova-pdf-generator

无论哪种方式,我都建议您在没有 jspdf 的情况下重构您的代码。