Rumah  >  Artikel  >  hujung hadapan web  >  create-next-app mengesahkan nama apl anda menggunakan pakej ini

create-next-app mengesahkan nama apl anda menggunakan pakej ini

Barbara Streisand
Barbara Streisandasal
2024-10-16 06:24:30552semak imbas

Dalam artikel ini, kami menganalisis cara create-next-app mengesahkan nama projek anda.

validate: (name) => {
 const validation = validateNpmName(basename(resolve(name)))
 if (validation.valid) {
   return true
 }
 return 'Invalid project name: ' + validation.problems[0]
},

Adakah anda cuba menamakan projek anda dengan ruang di dalamnya apabila menggunakan arahan create-next-app? jika anda telah berbuat demikian, ia tidak akan membenarkan ruang dalam projek anda kerana ia mengikut prinsip tertentu semasa menamakan projek anda.

Jadi apakah peraturan konvensyen penamaan ini?

sahkan fungsiNpmName

Jika anda menyemak create-next-app/index.ts ini, ia akan memanggil fungsi bernama validateNpmName. Ini diimport daripada helpers/validate-pkg.ts

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

Fungsi ini lurus ke hadapan, memanggil fungsi bernama validateProjectName yang diimport daripada validate-npm-package-name.

Dokumentasi mengatakan bahawa jika nama adalah sah, anda akan mendapat kembali objek di bawah:

{
 validForNewPackages: true,
 validForOldPackages: true
}

Apakah yang menjadikan nama sah? mari semak dokumentasi sekali lagi. Documentataion menyediakan peraturan Penamaan ini:

  1. panjang nama pakej hendaklah lebih besar daripada sifar

  2. semua aksara dalam nama pakej mestilah huruf kecil iaitu, nama huruf besar atau huruf campuran tidak dibenarkan

  3. nama pakej boleh terdiri daripada sempang

  4. nama pakej tidak boleh mengandungi sebarang aksara bukan url-selamat (kerana nama akhirnya menjadi sebahagian daripada URL)

  5. nama pakej tidak seharusnya bermula dengan . atau _

  6. nama pakej tidak boleh mengandungi sebarang ruang

  7. nama pakej tidak boleh mengandungi mana-mana aksara berikut: ~)(‘!*

  8. nama pakej tidak boleh sama dengan modul teras node.js/io.js atau nama simpanan/disenarai hitam. Contohnya, nama berikut tidak sah:

    — http

    — strim

    — modul_nod

    — favicon.ico

  9. panjang nama pakej tidak boleh melebihi 214

Ini ialah peraturan yang perlu anda ingat semasa menamakan projek Next.js anda.

Tentang kami:

Di Think Throo, kami berada dalam misi untuk mengajar konsep seni bina asas kod lanjutan yang digunakan dalam projek sumber terbuka.

10x kemahiran pengekodan anda dengan mempraktikkan konsep seni bina lanjutan dalam Next.js/React, pelajari amalan terbaik dan bina projek gred pengeluaran.

Kami adalah sumber terbuka — https://github.com/thinkthroo/thinkthroo (Beri kami bintang!)

Kami juga menyediakan pembangunan web dan perkhidmatan penulisan teknikal. Hubungi kami di hello@thinkthroo.com untuk mengetahui lebih lanjut!

Rujukan:

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-package-name

4. https://github.com/npm/validate-npm-package-name/tree/main



Atas ialah kandungan terperinci create-next-app mengesahkan nama apl anda menggunakan pakej ini. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn