我可以从Angular Services创建swagger或其他API文档吗?

x7rlezfr  于 2023-04-06  发布在  Angular
关注(0)|答案(1)|浏览(126)

我在创建后端之前创建了一个Angular应用。是否有一个service/npm package/library/etc可以扫描整个应用服务及其http请求,并生成一个swagger,以便后端开发人员使用它?
我知道有一些工具可以反过来做(从 Swagger 中生成Angular服务),但我已经有了代码,我想为我正在使用/期望的端点创建文档

41zrol4v

41zrol4v1#

compodoc应该能够通过以下添加到Angular服务方法的JSDoc注解生成json。https://compodoc.github.io/compodoc-demo-todomvc-angular/index.html然后可以馈送到swagger。
npm install -g @compodoc/compodoc
然后配置compdoc

{
  "title": "My Angular App API Documentation",
  "sourceDir": "src/app",
  "exportFormats": ["swagger"]
}

注解服务

import { HttpClient } from '@angular/common/http';
import { Injectable } from '@angular/core';

/**
 * A service for interacting with the My API.
 */
@Injectable({
  providedIn: 'root'
})
export class MyApiService {
  /**
   * Retrieves the list of users.
   * @returns An observable that emits the list of users.
   */
  getUsers() {
    return this.http.get<User[]>('/api/users');
  }

  constructor(private http: HttpClient) { }
}

生成swagger.json

compodoc -p tsconfig.app.json

输出文件可以然后给BE的家伙?

相关问题