【发布时间】:2016-07-27 19:59:53
【问题描述】:
我的问题是dgeni doc生成崩溃了,我读到错误集未定义,所以我认为错误与此有关。
我已经通过 npm install 安装了 dgeni(目前在 Windows 7 下,但之前也尝试过 Ubuntu 14.04)。 我的意思是:
- dgeni ~0.4.2
- dgeni-packages ~0.14.0
- 规范路径 0.0.2
项目的public文件夹里面有很多.js文件,不是直接在/public,而是一些子文件夹。
我在 docs 文件夹中设置了一个这样的 dgeni 包,并下载了位于 /docs/templates 中的模板:
dgeni-docs.js
var path = require('canonical-path');
var Package = require('dgeni').Package;
module.exports = new Package('dgeniDocsPackage', [
require('dgeni-packages/dgeni'),
require('dgeni-packages/jsdoc'),
require('dgeni-packages/nunjucks')
])
.config(function(log, readFilesProcessor, writeFilesProcessor, templateFinder, debugDumpProcessor) {
log.level = 'info';
readFilesProcessor.basePath = path.resolve(__dirname, '..');
readFilesProcessor.sourceFiles = [{ include: 'public/**/*.js', basePath: 'public' }];
writeFilesProcessor.outputFolder = 'docs/build';
templateFinder.templateFolders.unshift('docs/templates');
templateFinder.templatePatterns.unshift('common.template.html');
});
common.template.html
<h1>{{ doc.codeName }} ({{ doc.outputPath }})</h1>
<p>{{ doc.description }}</p>
{%- if doc.params %}
<h2>Params</h2>
<ul>
{%- for param in doc.params %}
<li>
<strong>{{ param.name }}</strong> { {{ param.typeList }} } - {{ param.description }}
</li>
{%- endfor %}
</ul>
{%- endif %}
{%- if doc.returns %}
<h2>Returns</h2>
<p>
{ {{ doc.returns.typeList }} } - {{ doc.returns.description }}
</p>
{%- endif %}
我启动它的命令是 "dgeni .\docs\dgeni-docs.js"
输出是:
W:\home\webserver\aconcept (master) (aconcept@0.3.3)
λ dgeni .\docs\dgeni-docs.js
W:\home\webserver\aconcept\node_modules\dgeni-packages\jsdoc\services\transforms\extract-access.js:8
extractAccessTransformImpl.allowedDocTypes = new Set(['property', 'method'])
^
ReferenceError: Set is not defined
at extractAccessTransform (W:\home\webserver\aconcept\node_modules\dgeni-packages\jsdoc\services\transforms\extract-access.js:8:52)
at Array.invoke [as 0] (C:\Users\HSO4ABT\AppData\Roaming\npm\node_modules\dgeni\node_modules\di\lib\injector.js:75:15)
at get (C:\Users\HSO4ABT\AppData\Roaming\npm\node_modules\dgeni\node_modules\di\lib\injector.js:48:43)
at C:\Users\HSO4ABT\AppData\Roaming\npm\node_modules\dgeni\node_modules\di\lib\injector.js:71:14
at Array.map (native)
at invoke (C:\Users\HSO4ABT\AppData\Roaming\npm\node_modules\dgeni\node_modules\di\lib\injector.js:70:31)
at C:\Users\HSO4ABT\AppData\Roaming\npm\node_modules\dgeni\lib\util\getInjectables.js:10:31
at Array.map (native)
at C:\Users\HSO4ABT\AppData\Roaming\npm\node_modules\dgeni\lib\util\getInjectables.js:9:22
at module.exports.Package.processor.processor.processor.processor.processor.processor.processor.processor.processor.factory.factory.factory.factory.factory.factory.factory.factory.factory.factory.config.config.config.extractTagsProcessor.defaultTagTransforms (W:\home\webserver\aconcept\node_modules\dgeni-packages\jsdoc\index.js:42:39)
感谢阅读
【问题讨论】:
标签: javascript node.js npm package