create-next-app は、このパッケージを使用してアプリ名を検証します

Barbara Streisand
リリース: 2024-10-16 06:24:30
オリジナル
485 人が閲覧しました

この記事では、create-next-app がプロジェクト名を検証する方法を分析します。

validate: (name) => {
 const validation = validateNpmName(basename(resolve(name)))
 if (validation.valid) {
   return true
 }
 return 'Invalid project name: ' + validation.problems[0]
},
ログイン後にコピー

create-next-app コマンドを使用するときに、プロジェクトにスペースを含む名前を付けてみましたか?そうすると、プロジェクトに名前を付ける際に特定の原則に従うため、プロジェクト内にスペースを入れることができなくなります。

それでは、これらの命名規則はどのようなものなのでしょうか?

NpmName 関数を検証

この create-next-app/index.ts をチェックすると、validateNpmName という名前の関数が呼び出されます。これは helpers/validate-pkg.ts

からインポートされます

create-next-app validates your app name using this package

この関数は単純で、validate-npm-package-name からインポートされた validateProjectName という名前の関数を呼び出します。

ドキュメントには、名前が有効であれば、以下のオブジェクトが返されると記載されています。

{
 validForNewPackages: true,
 validForOldPackages: true
}
ログイン後にコピー

名前が有効になるのは何ですか?もう一度ドキュメントを確認してみましょう。ドキュメントでは、次の命名規則が提供されています。

  1. パッケージ名の長さはゼロより大きくなければなりません

  2. パッケージ名のすべての文字は小文字である必要があります。つまり、大文字または大文字と小文字の混合名は許可されません

  3. パッケージ名はハイフンで構成できます

  4. パッケージ名には、URL セーフでない文字を含めることはできません (名前が URL の一部になるため)

  5. パッケージ名は で始まらないでください。または _

  6. パッケージ名にはスペースを含めないでください

  7. パッケージ名には次の文字を含めないでください: ~)(‘!*

  8. パッケージ名は、node.js/io.js コア モジュールや予約済み/ブラックリストに登録されている名前と同じにすることはできません。たとえば、次の名前は無効です:

    — http

    — ストリーム

    — ノードモジュール

    — favicon.ico

  9. パッケージ名の長さは 214 を超えることはできません

Next.js プロジェクトに名前を付けるときに覚えておくべきルールは次のとおりです。

私たちについて:

Think Throo では、オープンソース プロジェクトで使用される高度なコードベース アーキテクチャの概念を教えることを使命としています。

Next.js/React の高度なアーキテクチャ概念を実践してコーディング スキルを 10 倍にし、ベスト プラクティスを学び、実稼働レベルのプロジェクトを構築します。

私たちはオープンソースです — https://github.com/thinkthroo/thinkthroo (スターを付けてください!)

当社では、Web 開発およびテクニカル ライティング サービスも提供しています。詳細については、hello@thinkthroo.com までお問い合わせください。

参考文献:

1. https://github.com/vercel/next.js/blob/canary/packages/create-next-app/index.ts#L162

2. https://github.com/vercel/next.js/blob/canary/packages/create-next-app/helpers/validate-pkg.ts#L13

3. https://www.npmjs.com/package/validate-npm-パッケージ名

4. https://github.com/npm/validate-npm-パッケージ名/tree/main



以上がcreate-next-app は、このパッケージを使用してアプリ名を検証しますの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:dev.to
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!