首页  >  文章  >  web前端  >  @vercel/edge 中的 TypeDoc 使用

@vercel/edge 中的 TypeDoc 使用

DDD
DDD原创
2024-10-17 06:31:02312浏览

在本文中,我们分析了 @vercel/edge 包中的 TypeDoc 使用情况。

我发现了一个名为 typedoc.json 的文件,让我想知道什么是 TypeDoc,快速的谷歌搜索帮助我找到了 TypeDoc 网站。

那么什么是 TypeDoc?

TypeDoc usage in @vercel/edge

TypeDoc

TypeDoc 将 TypeScript 源代码中的注释转换为渲染的 HTML 文档或 JSON 模型。它是可扩展的并支持多种配置。可作为 CLI 或节点模块使用。

TypeDoc 文档很全面。现在让我们重点关注@vercel/edge 中如何使用它。

@vercel/edge 中的 typedoc.json 配置:

以下代码摘自packages/edge/typedoc.json。

{
 "$schema": "https://typedoc.org/schema.json",
 "entryPoints": ["src/index.ts"],
 "plugin": ["typedoc-plugin-markdown", "typedoc-plugin-mdn-links"],
 "out": "docs",
 "githubPages": false,
 "gitRevision": "main",
 "readme": "none",
 "hideBreadcrumbs": true
}

当您使用 CLI 运行 TypeDoc 时,您需要此配置。

注意“out”值,它是“docs”,这是一件好事,我们已经为@vercel/edge包生成了文档

修改请求接口:

让我们选择在 middleware-helpers.ts 中找到的 ModifiedRequest 接口

export interface ModifiedRequest {
 /**
 * If set, overwrites the incoming headers to the origin request.
 *
 * This is useful when you want to pass data between a Middleware and a
 * Serverless or Edge Function.
 *
 * @example
 * <caption>Add a `x-user-id` header and remove the `Authorization` header</caption>
 *
 * ```

ts
 * import { rewrite } from '@vercel/edge';
 * export default async function middleware(request: Request): Promise<Response> {
 * const newHeaders = new Headers(request.headers);
 * newHeaders.set('x-user-id', 'user_123');
 * newHeaders.delete('authorization');
 * return rewrite(request.url, {
 * request: { headers: newHeaders }
 * })
 * }
 *

*/
标头?:标头;
}



This interface has a comment added that is picked by TypeDoc and is made available in docs at [edge/docs/interfaces/ModifiedRequest.md](https://github.com/vercel/vercel/blob/main/packages/edge/docs/interfaces/ModifiedRequest.md)

But what’s the command this package uses to initiate documentation generation? It can be found in [package.json](https://github.com/vercel/vercel/blob/main/packages/edge/package.json#L19)



```plaintext
"build:docs": "typedoc && node scripts/fix-links.js && prettier - write docs/**/*.md docs/*.md",

您可以看到 docs 文件夹中应用了 prettier。

关于我们:

在 Think Throo,我们的使命是教授开源项目中使用的高级代码库架构概念。

通过在 Next.js/React 中练习高级架构概念,将您的编码技能提高 10 倍,学习最佳实践并构建生产级项目。

我们是开源的 — https://github.com/thinkthroo/thinkthroo (请给我们一颗星!)

我们还提供网络开发和技术写作服务。请通过hello@thinkthroo.com联系我们了解更多信息!

参考资料:

  1. https://github.com/vercel/vercel/blob/main/packages/edge/typedoc.jso

  2. https://github.com/TypeStrong/typedoc

  3. https://typedoc.org/

  4. https://github.com/vercel/vercel/blob/main/packages/edge/docs

  5. https://github.com/vercel/vercel/blob/main/packages/edge/docs/interfaces/ModifiedRequest.md

  6. https://github.com/vercel/vercel/blob/main/packages/edge/src/middleware-helpers.ts#L1

以上是@vercel/edge 中的 TypeDoc 使用的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn