Node.js + Nativefier应用程序不会下载文件

时间:2016-12-18 19:39:42

标签: javascript node.js

这真的开始了但是我。

我正在使用nativefire从Web应用程序创建桌面应用程序,而我似乎无法实现的一件事就是允许文件下载。

我有一个脚本可以将表转换为excel文件和备份功能,两者都应该下载浏览器中运行良好的文件,但在创建桌面应用程序后,单击按钮后没有任何反应。

有没有人找到实现这个目标的方法?

  • Nativefier版本:v7.0.1
  • Node.js的版本:v6.9.1
  • 操作系统:Windows 7
  • Architecture 64

JS代码在nativefier生成的应用程序中无效,但在浏览器中有效:

    function fnExcelReport()
    {
        var tab_text="<table border='1px'><tr bgcolor='#ebebeb'>";
        var textRange; var j=0;
        tab = document.getElementById('Export');

        for(j = 0 ; j < tab.rows.length ; j++) 
        {     
            tab_text=tab_text+tab.rows[j].innerHTML+"</tr>";
        }

        tab_text=tab_text+"</table>";
        tab_text= tab_text.replace(/<a[^>]*>|<\/a>/g, "");
        tab_text= tab_text.replace(/<img[^>]*>/gi,"");
        tab_text= tab_text.replace(/<input[^>]*>|<\/input>/gi, "");

        var ua = window.navigator.userAgent;
        var msie = ua.indexOf("MSIE "); 

        if (msie > 0 || !!navigator.userAgent.match(/Trident.*rv\:11\./))
        {
            txtArea1.document.open("txt/html","replace");
            txtArea1.document.write(tab_text);
            txtArea1.document.close();
            txtArea1.focus(); 
            sa=txtArea1.document.execCommand("SaveAs",true,"Say Thanks to Sumit.xls");
        }  
        else               
            sa = window.open('data:application/vnd.ms-excel,' + encodeURIComponent(tab_text));  
        return (sa);
    }

0 个答案:

没有答案