0

我只是想在节点中使用 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)

如果有人可以帮助我并告诉我我缺少什么,我将不胜感激。

4

1 回答 1

0

使用时需要为每个 jsreport 扩展创建一个实例jsreport.use。这是使用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)
    });
于 2018-01-15T05:17:21.097 回答