1

exportVar:...我尝试使用下面的代码生成解析器文件,但是尽管我已包含在选项中,但最终结果文件 parser.js 不包含导出行。

我想在文件顶部手动添加它吗?

const peg = require('pegjs');
const fs = require('fs');

const grammarAsString = fs.readFileSync('./grammar.pegjs').toString();

const option = {
  output: 'source',
  exportVar: 'module.exports',
};

const parserSourceCode = peg.generate(grammarAsString, option);
fs.writeFileSync('./parser.js', parserSourceCode);
4

1 回答 1

1

它已通过将格式选项设置为“commonjs”来解决,这会将其传递给解析器。

const option = {
  output: 'source',
  format: 'commonjs',
};
const parserSourceCode = peg.generate(grammarAsString, option);
fs.writeFileSync('./parser.js', parserSourceCode);
于 2019-12-22T23:59:24.157 回答