از طریق منوی جستجو مطلب مورد نظر خود در وبلاگ را به سرعت پیدا کنید
انتشار یک ماژول Node.js در NPMNPM مخفف Node Package Manager است و به مخزن پروژه آنلاین یا ابزار Command Line Interface (CLI) اشاره دارد که برای تعامل با مخزن آنلاین استفاده می شود. در حال حاضر، NPM بزرگترین رجیستری نرم افزار در جهان با بیش از 1.4 میلیون بسته کد است. به عنوان مثال، اگر می خواهید از Node استفاده کنید …
سرفصلهای مطلب
معرفی
NPM مخفف Node Package Manager و به مخزن پروژه آنلاین یا به رابط خط فرمان (CLI) ابزار مورد استفاده برای تعامل با مخزن آنلاین.
در حال حاضر، NPM بزرگترین رجیستری نرم افزار در جهان با بیش از 1.4 میلیون بسته کد است. به عنوان مثال، اگر می خواهید از Node.js برای ارسال ایمیل استفاده کنید – می توانید یک جستجوی سریع انجام دهید روی مخزن آنها و پیدا کردن یک ماژول مانند Nodemailer، که می تواند در زمان شما صرفه جویی زیادی کند.
ممکن است بخواهید ابزاری را که ایجاد کردهاید با جامعه به اشتراک بگذارید، که برخی از کارهای دیگ بخار را ساده میکند. در این مقاله، روش انتشار یک ماژول Node.js در NPM را بررسی خواهیم کرد.
شروع کار با NPM
برای انتشار یک ماژول در NPM، باید یک حساب NPM داشته باشیم. اگر یکی ندارید، می توانید آن را ایجاد کنید اینجا.
هنگامی که Node.js را نصب می کنید، npm
ابزار نیز به طور خودکار نصب می شود.
برای بررسی اینکه آیا npm
به درستی نصب شده است، می توانید با اجرا کردن، بررسی کنید که نسخه نصب شده فعلی چیست:
$ npm -v
وقتی مطمئن شدیم که واقعا داریم npm
نصب شده است، ما می توانیم وارد شویم:
$ npm login
این ابزار از ما می خواهد شناسه، ایمیل و رمز عبور ما را که هنگام ثبت نام ایجاد شده است، بنویسیم.
توجه داشته باشید: برای استفاده از NPM نیازی به داشتن یک حساب کاربری ندارید، اما برای انتشار یک ماژول، به آن نیاز دارید زیرا به شما به عنوان نویسنده مرتبط است.
ایجاد یک بسته
بیایید یک دایرکتوری برای پروژه خود ایجاد کنیم و وارد آن شویم:
$ mkdir publish-to-npm
$ cd publish-to-npm
در مرحله بعد، پروژه را مقداردهی اولیه می کنیم:
$ npm init
سپس این دستور چندین سوال را از شما میپرسد که پس از پر کردن، a را ایجاد میکند package.json
فایل:
{
"name": "publish-to-npm",
"version": "1.0.0",
"description": "\"Sample module for publishing\"",
"main": "index.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1"
},
"author": "(email protected)",
"license": "ISC"
}
نقطه ورود اصلی، به طور پیش فرض، است index.js
، بنابراین ما می خواهیم آن فایل را ایجاد کنیم و چیزی به آن اضافه کنیم.
اگر از -y
پرچم در کنار init
دستور، این ها روی پیش فرض های خود تنظیم می شدند.
افزودن وابستگی ها
بیایید کدی به ما اضافه کنیم index.js
فایل کنید و یک وابستگی اضافه کنید، مانند یک ماژول NPM دیگر برای استفاده.
ابتدا یک وابستگی نصب می کنیم:
$ npm install node-fetch --save
سپس، ما import آن را به ما index.js
فایل و مقداری منطق اضافه کنید:
const fetch = require('node-fetch');
fetch('https://google.com')
.then(res => res.text())
.then(text => console.log(text))
برای تأیید اینکه این کار می کند، می توانیم اجرا کنیم:
$ node index.js
و خروجی این است:
<!doctype html>
<html itemscope="" itemtype="http://schema.org/WebPage" lang="en-RS">
<head>
<meta charset="UTF-8">
<meta content="origin" name="referrer">
<!-- Rest of the page -->
هنگام بررسی package.json
اکنون فایل کنید، ما می توانیم ببینیم node-fetch
در وابستگی های ما:
{
"name": "publish-to-npm",
"version": "1.0.0",
"description": "\"Sample module for publishing\"",
"main": "index.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1"
},
"author": "(email protected)",
"license": "ISC"
"dependencies": {
"node-fetch": "2.6.1"
}
}
توجه داشته باشید: را --save
پرچم می گوید npm
برای به روز رسانی پروژه با ماژول به عنوان یک وابستگی. این در نسخه های جدیدتر برداشته شده است و ماژول حتی بدون آن به لیست وابستگی اضافه می شود --save
پرچم، هر چند، برای نسخه های قدیمی تر، باید از آن استفاده کنید.
در حال انتشار به NPM
اکنون میتوانیم ماژول را از طریق NPM منتشر کنیم publish
دستور:
$ npm publish
اگر خطایی دریافت کردید، احتمالاً به دلیل برخورد نام است. به عنوان مثال، یک بسته با همین نام در حال حاضر وجود دارد روی npm ما باید نام پروژه خود را به چیزی منحصربفرد تغییر دهیم.
می توانید نام بسته های موجود را از طریق نوار جستجو جستجو کنید روی را خانه page.
بعد از اینکه یک نام منحصر به فرد پیدا کردید، باید نام بسته را در ما تغییر دهید package.json
فایل. به منظور سازگاری، همچنین توصیه می شود نام پوشه را به روز کنید تا با نام بسته مطابقت داشته باشد.
اگر نمی توانید یک نام منحصر به فرد پیدا کنید، باید بررسی کنید بسته های محدوده. این اساساً فضای نام خود را به شما می دهد روی NPM، بنابراین می توانید بسته های خود را هر چه می خواهید نام گذاری کنید.
به طور کلی توصیه می شود که اگر قصد دارید یک ماژول را عمومی کنید، همچنان از استفاده از همان نام به عنوان بسته دیگر برای جلوگیری از سردرگمی های غیر ضروری خودداری کنید. با این حال، برای استفاده شخصی بسیار کاربردی است.
این یکی از تنظیماتی است که ما با استفاده از آن از تغییر آن اجتناب کردیم -y
پرچم. اگر می خواهید یک ماژول با محدوده بسازید، باید پروژه خود را با موارد زیر مقداردهی اولیه کنید:
$ npm init --scope=@your-username
نتیجه
در این مقاله، ما یک برنامه ساده نوشتهایم و آن را بهعنوان یک ماژول عمومی در NPM منتشر کردهایم تا دیگر توسعهدهندگان از آن استفاده کنند.
ممکن است در آینده با موقعیتی مواجه شوید که در آن ماژولی برای حل مشکل خاص خود به راحتی در دسترس نباشد. شما می توانید راه حل را خودتان بنویسید و آن را در NPM آپلود کنید، و شاید به سایر توسعه دهندگان با همین مشکل کمک کنید.
(برچسبها برای ترجمه)# جاوا اسکریپت
منتشر شده در 1403-01-19 11:35:03