Dans cet article, nous analysons l'utilisation de TypeDoc dans le package @vercel/edge.
J'ai trouvé un fichier nommé typedoc.json, je me suis demandé ce qu'était TypeDoc et une recherche rapide sur Google m'a aidé à trouver le site Web TypeDoc.
Alors, qu’est-ce que TypeDoc ?
TypeDoc convertit les commentaires du code source TypeScript en documentation HTML rendue ou en modèle JSON. Il est extensible et prend en charge une variété de configurations. Disponible sous forme de module CLI ou Node.
La documentation TypeDoc est complète. Concentrons-nous maintenant sur la façon dont cela est utilisé dans @vercel/edge.
Le code ci-dessous est extrait de 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 }
Vous avez besoin de cette configuration lorsque vous utilisez CLI pour exécuter TypeDoc.
Faites attention à la valeur « out », c'est « docs », c'est une bonne chose que nous ayons déjà des docs générés pour le package @vercel/edge
Choisissons l'interface ModifiedRequest trouvée dans middleware-helpers.ts
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 } * }) * } *
*/
en-têtes ? : En-têtes ;
>
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",
Vous pouvez voir que plus joli est appliqué dans le dossier docs.
Chez Think Throo, nous avons pour mission d'enseigner les concepts architecturaux avancés de base de code utilisés dans les projets open source.
10x vos compétences en codage en pratiquant des concepts architecturaux avancés dans Next.js/React, apprenez les meilleures pratiques et construisez des projets de niveau production.
Nous sommes open source — https://github.com/thinkthroo/thinkthroo (Donnez-nous une étoile !)
Nous fournissons également des services de développement Web et de rédaction technique. Contactez-nous à hello@thinkthroo.com pour en savoir plus !
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
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!