在本文中,我们分析了 @vercel/edge 包中的 TypeDoc 使用情况。
我发现了一个名为 typedoc.json 的文件,让我想知道什么是 TypeDoc,快速的谷歌搜索帮助我找到了 TypeDoc 网站。
那么什么是 TypeDoc?
TypeDoc 将 TypeScript 源代码中的注释转换为渲染的 HTML 文档或 JSON 模型。它是可扩展的并支持多种配置。可作为 CLI 或节点模块使用。
TypeDoc 文档很全面。现在让我们重点关注@vercel/edge 中如何使用它。
以下代码摘自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联系我们了解更多信息!
https://github.com/vercel/vercel/blob/main/packages/edge/typedoc.jso
https://github.com/TypeStrong/typedoc
https://typedoc.org/
https://github.com/vercel/vercel/blob/main/packages/edge/docs
https://github.com/vercel/vercel/blob/main/packages/edge/docs/interfaces/ModifiedRequest.md
https://github.com/vercel/vercel/blob/main/packages/edge/src/middleware-helpers.ts#L1
以上是@vercel/edge 中的 TypeDoc 使用的详细内容。更多信息请关注PHP中文网其他相关文章!