jsreport:错误发生 - 渲染报告mac期间出错

时间:2017-04-20 23:17:34

标签: node.js phantomjs jsreport

我在mac上使用带有nodejs的jsreport,我收到以下错误

我已经修改了文件夹权限并以root身份运行但它不起作用。示例代码将其复制并直接从官方网站https://jsreport.net/learn/pdf-reports-in-nodejs

粘贴

server.js

var http = require('http');
var jsreport = require('jsreport');

http.createServer(function (req, res) {

  jsreport.render("<h1>Hello world</h1>").then(function(out) {
    out.stream.pipe(res);
  }).catch(function(e) {    
    res.end(e.message);
  });

}).listen(1337, '127.0.0.1');

错误:

Error during rendering report: Command failed: /Users/macbookpro/Downloads/reports/node_modules/phantom-html-to-pdf/node_modules/phantomjs/lib/phantom/bin/phantomjs --ignore-ssl-errors=yes --web-security=false --ssl-protocol=any /Users/macbookpro/Downloads/reports/node_modules/phantom-html-to-pdf/lib/scripts/standaloneScript.js /var/folders/0f/6nfvtgxn069237lpmp00ldvr0000gn/T/jsreport/ee4b46e0-261c-11e7-a041-db0530c5a883settings.html

Error

1 个答案:

答案 0 :(得分:2)

默认的phantomjs@1.9目前无法在macOS sierra更新中使用,您需要使用phantomjs 2.

https://jsreport.net/learn/phantom-pdf#phantomjs2

  

配方默认安装使用phantomjs@1.9。您还可以安装其他版本并同时使用它们。

     
      
  1. 使用npm install phantomjs-exact-2-1-1
  2. 安装其他幻像   
  3. 使用jsreport studio在属性中切换phantomjs版本或在api调用中设置"template.phantom.phantomjsVersion":"2.1.1"
  4.         

    您还可以在config中全局设置默认的phantomjs版本:

    "phantom": {   
      "defaultPhantomjsVersion": "2.1.1"
    }
    
         

    请注意,phantomjs 2会生成不同大小的字体。当表生成多个页面时,它也不支持重复thead。