Jsreports无法初始化,抛出"错误:不支持的商店提供商fs"

时间:2018-01-14 21:15:27

标签: javascript node.js jsreport

我只是试图在节点中使用jsreport-core进行测试,但是我在这里初始化时遇到问题是我的代码:

  const jsReport = require('jsreport-core')({
        loadConfig: false,
        dataDirectory: path.join(__dirname, 'data'),
        blobStorage: 'fileSystem',
        connectionString: { 'name': 'fs' }
    });
    jsReport.use(require('jsreport-handlebars'));
    jsReport.use(require('jsreport-phantom-pdf'));
    jsReport.use(require('jsreport-templates'));
    jsReport.use(require('jsreport-fs-store'));
    jsReport.init();

然后出于某种原因,使用jsreport-fs-store时遇到了麻烦。

Unhandled rejection Error: Unsupported store provider fs
    at module.exports.DocumentStore.init (jsReportTest/node_modules/jsreport-core/lib/store/documentStore.js:37:11)

如果有人能帮助我并告诉我我错过了什么,那将会有很大的帮助。

1 个答案:

答案 0 :(得分:0)

使用jsreport.use时,您需要创建每个jsreport扩展程序的实例。这是使用jsreport.use电话的正确方法

const jsReport = require('jsreport-core')({
        loadConfig: false,
        dataDirectory: path.join(__dirname, 'data'),
        blobStorage: 'fileSystem',
        connectionString: { 'name': 'fs' }
    });
    jsReport.use(require('jsreport-handlebars')());
    // you can also use jsReport.use(require('jsreport-handlebars')({//options here..})) if you need to pass specific options to the extension used
    jsReport.use(require('jsreport-phantom-pdf')());
    jsReport.use(require('jsreport-templates')());
    jsReport.use(require('jsreport-fs-store')());

    jsReport.init().then(function () {
      console.log('jsreport started')
    }).catch(function (err) {
      console.error('Error while starting jsreport:')
      console.error(err)
    });