如何从源代码解析 angular 元素元数据
How to parse angular elements metadata from source code
最近我一直在尝试根据 inputs/outputs 和评论为我的 angular 元素自动生成文档,但是我没有找到任何东西。我寻找的是类似于 compodocs 的东西,但它会输出我的 angular 组件的数据结构,其中包含组件描述(注释)以及它们的 inputs/outputs 与其关联的 types/comments 合并所以我可以将它们关联到 angular 元素并生成适当的文档。
例如,假设我有以下组件:
import { Component } from '@angular/core';
/*
Component displaying "Hello {{nameInput}}" where nameInput is an input
*/
@Component({
selector: 'hello',
template: `
Hello {{nameInput}}
`
})
export class HelloComponent {
/*
name that should be displayed after 'Hello '
*/
@Input()
public nameInput: string;
constructor(){}
}
我想要一个 json 输出,如下所示:
[
{
"HelloComponent":
{
"description": "Component displaying \"Hello {{name}}\" where name is an input",
"inputs": [
{
"name": "nameInput",
"type": "string",
"description": "name that should be displayed after 'Hello '"
}
]
}
}
]
是否有图书馆已经做了类似的事情?
EDIT:我仔细查看了 Compodoc,它实际上能够在 json 中生成文档,这正是我正在寻找的:
compodoc src/tsconfig.json -e json
我仔细查看了 Compodoc,它实际上能够在 json 中生成文档,这正是我正在寻找的:compodoc src/tsconfig.json -e json
最近我一直在尝试根据 inputs/outputs 和评论为我的 angular 元素自动生成文档,但是我没有找到任何东西。我寻找的是类似于 compodocs 的东西,但它会输出我的 angular 组件的数据结构,其中包含组件描述(注释)以及它们的 inputs/outputs 与其关联的 types/comments 合并所以我可以将它们关联到 angular 元素并生成适当的文档。 例如,假设我有以下组件:
import { Component } from '@angular/core';
/*
Component displaying "Hello {{nameInput}}" where nameInput is an input
*/
@Component({
selector: 'hello',
template: `
Hello {{nameInput}}
`
})
export class HelloComponent {
/*
name that should be displayed after 'Hello '
*/
@Input()
public nameInput: string;
constructor(){}
}
我想要一个 json 输出,如下所示:
[
{
"HelloComponent":
{
"description": "Component displaying \"Hello {{name}}\" where name is an input",
"inputs": [
{
"name": "nameInput",
"type": "string",
"description": "name that should be displayed after 'Hello '"
}
]
}
}
]
是否有图书馆已经做了类似的事情?
EDIT:我仔细查看了 Compodoc,它实际上能够在 json 中生成文档,这正是我正在寻找的: compodoc src/tsconfig.json -e json
我仔细查看了 Compodoc,它实际上能够在 json 中生成文档,这正是我正在寻找的:compodoc src/tsconfig.json -e json