ویرگول
ورودثبت نام
متین تلخابی
متین تلخابی
خواندن ۱ دقیقه·۲ ماه پیش

سری سوال های فرانت : همه چی درباره package-look.json

خلاصه مقاله برای اونایی که حوصله ندارن :

توی برنامه های جاوااسکریپتی یه فایلی داریم به اسم package-lock.json که هدفش حفظ سازگاری بین نسخه های برنامست که توی جاهای مختلف نصب می شن

اینم برای اونا که حوصله دارن :

توی فایل هایی جاوااسکریپتی که نوشتین حتما این فایل رو دیدین package-lock.json معمولا بدون اینکه بدونیم خیلی به کارمون میاد
این فایل وقتی توی محیط های متفاوت اجرا می شه باعث رفتار و خروجی پایدار و قابل پیش بینی می شه

اصلا این فایله چی هست چی تو خودش نگه میداره ؟

حواستون باشه این فایله رو با package.json اشتباه نگیرید ...
محتویات package.json در اصل مشخصات همون پکیج هایی هست که توی پروژه نصب کردید (البته یکم خلاصه تر)
این نمونه ای از فایل package.json هست

{ &quotname&quot: &quotmy-app&quot, &quotdependencies&quot: { &quotreact&quot: &quot^17.0.0&quot } }

فایل package-lock.json به صورت خودکار توسط ابزار های مدیریت پکیج مثل npm درست می شه و ورژن دقیق پکیج های نصب شده داخلش قرار داره و علاوه بر اینا جزئیاتی مثل ادرس URL که از اون پکیج رو دانلود کردید هم ذخیره می کنه که دیگه به مشکل ناسازگاری هم نخورین
این یه نمونه از فایل package-lock.json :

{ &quotname&quot: &quotmy-app&quot, &quotlockfileVersion&quot: 1, &quotdependencies&quot: { &quotreact&quot: { &quotversion&quot: &quot17.2.0&quot, &quotresolved&quot: &quothttps://registry.npmjs.org/react/-/react-17.2.0.tgz&quot, &quotintegrity&quot: &quotsha512-...&quot // additional package information } } }

خوب همین طور که دیدید تفاوتش واضحه ...

اگه توی پروژه ای package-lock.json وجود نداشته باشه با دستور npm install این فایل به صورت خودکار درست می شه و با اضافه کردن یه پکیج فایل به صورت خودکار اپدیت می شه پس برای صلاح خودتون هم شده بهش دست نزنید -_-

امیداورم از این اطلاعات نهایت استفاده رو کرده باشید اگه متن یا توضیحات مشکلی داشت بهم بگید

منبع : ditty



npmپکیج npmfrontendfrontend developmentjavascript
برنامه‌نویس Back End مسلط به زبان‌های TailwindCSS، JavaScript، Python و فریم‌ورک Django. مشتاق یادگیری و پیشرفت
شاید از این پست‌ها خوشتان بیاید