Maison >interface Web >js tutoriel >Utilisation du module utilitaire Node.js dans les ensembles de modifications

Utilisation du module utilitaire Node.js dans les ensembles de modifications

DDD
DDDoriginal
2024-11-27 06:11:22539parcourir

Vous trouverez ceci ci-dessous, à la ligne 4 du code source des Changesets

import { format } from "util";

Dans cet article, un aperçu du module util et de son utilisation dans les ensembles de modifications est fourni.

Module utilitaire

Le module util est principalement conçu pour prendre en charge les besoins des propres API internes de Node.js. Cependant, de nombreux utilitaires sont également utiles aux développeurs d'applications et de modules. Il est accessible en utilisant :

const util = require('util');

Vous pouvez en savoir plus sur le module Util ici.

Node.js util module usage in Changesets

Le module Util possède un certain nombre d'API, mais nous sommes intéressés par l'API Format car c'est ce qui est utilisé dans le code source des Changesets.

util.format(format[, …args])

La méthode util.format() renvoie une chaîne formatée en utilisant le premier argument comme format de type printf.

Le premier argument est une chaîne contenant zéro ou plusieurs jetons d'espace réservé. Chaque jeton d'espace réservé est remplacé par la valeur convertie de l'argument correspondant. Les espaces réservés pris en charge sont :

  • %s — Chaîne.

  • %d — Nombre (valeur entière ou à virgule flottante).

  • %i — Entier.

  • %f — Valeur à virgule flottante.

  • %j — JSON. Remplacé par la chaîne « [Circulaire] » si l'argument contient des références circulaires.

  • %o — Objet. Représentation sous forme de chaîne d'un objet avec un formatage d'objet JavaScript générique. Semblable à

    util.inspect() avec options { showHidden : true, profondeur : 4, showProxy : true }. Cela affichera l'objet complet

    y compris les symboles et les propriétés non énumérables.

  • %O — Objet. Représentation sous forme de chaîne d'un objet avec un formatage d'objet JavaScript générique. Semblable à util.inspect()

    sans options. Cela affichera l'objet complet, sans inclure les symboles et les propriétés non énumérables.

  • %% — signe de pourcentage unique (« % »). Cela ne consomme pas d’argument.

Si l'espace réservé n'a pas d'argument correspondant, l'espace réservé n'est pas remplacé.

util.format('%s:%s', 'foo');
// Returns: 'foo:%s'

S'il y a plus d'arguments transmis à la méthode util.format() que le nombre d'espaces réservés, les arguments supplémentaires sont contraints en chaînes puis concaténés à la chaîne renvoyée, chacune délimitée par un espace. Les arguments excessifs dont le type est « objet » ou « symbole » (sauf null) seront transformés par util.inspect().

util.format('%s:%s', 'foo', 'bar', 'baz'); // 'foo:bar baz'

Si le premier argument n'est pas une chaîne alors util.format() renvoie une chaîne qui est la concaténation de tous les arguments séparés par des espaces. Chaque argument est converti en chaîne à l'aide de util.inspect().

util.format(1, 2, 3); // '1 2 3'

Si un seul argument est passé à util.format(), il est renvoyé tel quel sans aucun formatage.

import { format } from "util";

Maintenant que nous comprenons les bases du module Util et de l'API de format, examinons maintenant l'utilisation du format dans les Changesets.

Utilisation d'util.format dans les ensembles de modifications

En recherchant le format, j'ai trouvé 2 cas où le format est utilisé.

Node.js util module usage in Changesets

const util = require('util');

Cela génère simplement une erreur et il n'y a aucun remplacement à effectuer puisque le premier argument est une chaîne vide.

Node.js util module usage in Changesets

util.format('%s:%s', 'foo');
// Returns: 'foo:%s'

Cela produit une chaîne séparée par un espace, en supposant que …args est séparé par des virgules

À propos de nous :

Chez Thinkthroo, nous étudions les grands projets open source et fournissons des guides architecturaux. Nous avons développé des composants réutilisables, construits avec tailwind, que vous pouvez utiliser dans votre projet. Nous proposons des services de développement Next.js, React et Node.

Prenez rendez-vous avec nous pour discuter de votre projet.

Node.js util module usage in Changesets

Références :

  1. https://www.npmjs.com/package/util

  2. https://github.com/changesets/changesets/blob/main/packages/cli/src/index.ts#L4

  3. https://github.com/changesets/changesets/blob/main/packages/cli/src/index.ts#L88

  4. https://nodejs.org/docs/latest-v8.x/api/util.html#util_util_format_format_args

  5. https://github.com/changesets/changesets/blob/main/packages/logger/src/index.ts#L23

  6. https://github.com/changesets/changesets/blob/main/packages/get-github-info/src/index.test.ts#L127

  7. https://github.com/changesets/changesets/blob/main/packages/cli/src/index.ts#L88

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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn