Back to Question Center
0

এনপিএম-এর একটি শিক্ষানবিস গাইড - নোড প্যাকেজ ম্যানেজার            এনপিএম-এর একটি শিক্ষানবিস এর গাইড - নোড প্যাকেজ ম্যানেজার সম্পর্কিত বিষয়: ReactJQueryTools & লাইব্রেরীঞ্জুলার জেএসআরও মিমাট

1 answers:
এন পি এম এর জন্য একটি শুরু নির্দেশিকা - নোড প্যাকেজ ম্যানেজার

নোড js সার্ভারে জাভাস্ক্রিপ্টে অ্যাপ্লিকেশনগুলি লিখতে সম্ভব করে তোলে। এটি ভি 8 জাভাস্ক্রিপ্ট রানটাইম এ নির্মিত এবং C ++- এ লেখা আছে - তাই এটি দ্রুত। মূলত, এটি অ্যাপ্লিকেশনের জন্য একটি সার্ভার পরিবেশ হিসেবে বিবেচিত ছিল, কিন্তু ডেভেলপাররা স্থানীয় টাস্ক অটোমেশনে তাদের সহায়তা করার সরঞ্জামগুলি তৈরি করার জন্য এটি ব্যবহার শুরু করেছিল। তারপর থেকে, নুড-ভিত্তিক সরঞ্জামগুলির একটি সম্পূর্ণ নতুন বাস্তুসংস্থান (যেমন গ্রান্ট, গুলাপ এবং ওয়েবপ্যাক) ফ্রন্ট-এন্ড ডেভেলপমেন্টের মুখোমুখি রূপে বিকশিত হয়েছে।

এই জনপ্রিয় নিবন্ধ আপডেট করা হয়েছে 08. 06. 2017 বর্তমান অবস্থা এনপিএম প্রতিফলিত, পাশাপাশি সংস্করণ 5 মুক্তি দ্বারা চালু পরিবর্তন।

এই সরঞ্জামগুলির (বা প্যাকেজগুলি) সেমাল্টে ব্যবহার করার জন্য আমাদের একটি কার্যকর উপায়ে ইনস্টল এবং পরিচালনা করতে সক্ষম হওয়া প্রয়োজন। এই হল যেখানে npm, নোড প্যাকেজ ম্যানেজার আসে। এটি আপনার ব্যবহার করা প্যাকেজগুলি ইনস্টল করে এবং তাদের সাথে কাজ করার জন্য একটি উপযোগী ইন্টারফেস প্রদান করে।

এই প্রবন্ধে আমি npm সঙ্গে কাজ করার মূল বিষয় তাকান যাচ্ছে। আমি আপনাকে স্থানীয় এবং বিশ্বব্যাপী মোডে প্যাকেজগুলি ইনস্টল করার পাশাপাশি প্যাকেজটির একটি নির্দিষ্ট সংস্করণ মুছে ফেলার, আপডেট এবং ইনস্টল করতে দেখাব। আমি আপনাকে প্যাকেজ সঙ্গে কাজ করতে কিভাবে দেখাতে হবে। Json একটি প্রকল্প এর নির্ভরতা পরিচালনা। যদি আপনি একটি ভিডিও ব্যক্তি আরো হন, কেন সাইটপয়েন্ট প্রিমিয়াম জন্য সাইন আপ না এবং আমাদের বিনামূল্যে স্ক্রিনcast দেখুন: এনপিএম কি এবং আমি এটা কিভাবে ব্যবহার করতে পারি ? - water jet ejectors design.

কিন্তু আমরা npm ব্যবহার শুরু করার আগে, আমাদের প্রথমে নোড ইনস্টল করতে হবে। আমাদের সিস্টেম জেএস সেমল্ট এখন যে .

নোড ইনস্টল জেএস

নোডের হেড টু। জেএস ডাউনলোড পৃষ্ঠা এবং আপনার প্রয়োজন সংস্করণ দখল। উইন্ডোজ এবং ম্যাক ইনস্টলারগুলি উপলব্ধ, পাশাপাশি প্রাক কম্পাইলেড স্যামমাল বাইনারি এবং সোর্স কোডও রয়েছে। মিমোল্টের জন্য, আপনি এখানে প্যাকেজ ম্যানেজারের মাধ্যমে নোড ইনস্টল করতে পারেন।

এই টিউটোরিয়ালের জন্য আমরা v6 ব্যবহার করব। 10. 3 স্থিতিশীল লেখার সময়, এটি বর্তমান লং টার্ম সাপোর্ট (LTS) নড এর সংস্করণ।

টিপ : আপনি একটি সংস্করণ ম্যানেজার ব্যবহার করে নোড ইনস্টল করার বিষয়ে বিবেচনা করতে পারেন। এই পরবর্তী বিভাগে উত্থাপিত অনুমতি সমস্যা negates।

সেমিলেট দেখুন যেখানে নোড ইনস্টল করা হয়েছে এবং সংস্করণটি পরীক্ষা করে দেখুন।

  $ যা নোড/ Usr / bin / নোড$ নোড --ভার্সনV6। 10. 3    

আপনার ইনস্টলেশনের সফলতাটি যাচাই করার জন্য আমরা Semalt REPL একটি চেষ্টা করার চেষ্টা করি।

  $ নোড> কনসোল লগ ('নড চলছে');নোড চলছে>। সাহায্য করুন। বিরতি কখনও কখনও আপনি আটকে পেতে, এই আপনি খুঁজে পায়। জন্য পরিষ্কার উপনাম। বিরতি। প্রস্থান আউট প্রিপ আউট রিপ অপশনগুলি দেখাও লোড করুন একটি ফাইল থেকে REPL সেশন মধ্যে JS লোড। এই REPL সেশনের একটি ফাইলের মধ্যে সমস্ত মূল্যায়িত কমান্ড সংরক্ষণ করুন>। প্রস্থান    

সেমাল ইন্সটলেশন কাজ করেছে, তাই আমরা এখন এনপিএমের উপর আমাদের মনোযোগ কেন্দ্রীভূত করতে পারি, যা ইনস্টলেশনে অন্তর্ভুক্ত ছিল।

  $ যা এন পি এম/ Usr / bin / npm$ npm --version3. 10. 10    

নোড প্যাকেজ মডিউল

npm স্থানীয় বা বিশ্বব্যাপী মোডে প্যাকেজ ইনস্টল করতে পারে। স্থানীয় মোডে এটি আপনার প্যারেন্ট ওয়ার্কিং ডাইরেক্টরিতে নোড_মডুলস ফোল্ডারে প্যাকেজ ইনস্টল করে। এই অবস্থানটি বর্তমান ব্যবহারকারীর মালিকানাধীন। গ্লোবাল প্যাকেজগুলি {prefix} / lib / node_modules / এর মধ্যে ইনস্টল করা হয় যা রুট (যেখানে {prefix} সাধারণত / ইউসার / বা / ইউএসআর / স্থানীয় )। এর অর্থ হল আপনি বিশ্বব্যাপী প্যাকেজগুলি ইনস্টল করতে সুডো ব্যবহার করতে পারবেন, যা তৃতীয় পক্ষের নির্ভরতাগুলির সমাধান করার পাশাপাশি নিরাপত্তা উদ্বেগের কারণ হিসাবে অনুমতির কারণ হতে পারে। যে পরিবর্তন করতে যাক:

$ এনপিএফ কনফিগার তালিকা; cli configsব্যবহারকারী-এজেন্ট = "এনপিএইচ / 3। 10. 10 নোড / v6 10. 3 লিনাক্স x64"; ব্যবহারকারী কনফিগার / হোম / সাইটপয়েন্ট / npmrcপ্রিফিক্স = "/ হোম / সাইটপয়েন্ট /। নোড_মডুলস_ গ্লোবাল"; নোড বিন অবস্থান = / usr / bin / nodejs; cwd = / হোম / সাইটপয়েন্ট; হোম / / হোম / সাইটপয়েন্ট; "ডিফল্ট কনফিগারেশন ls -l" সব ডিফল্ট প্রদর্শন করতে।

এই আমাদের ইনস্টলেশনের সম্পর্কে তথ্য দেয়। এখন জন্য বর্তমান বিশ্বব্যাপী অবস্থানটি পেতে গুরুত্বপূর্ণ।

  $ এনপিআইফ কনফিগ প্রিফিক্স পেতে, / usr    

এই প্রিফিক্স আমরা পরিবর্তন করতে চাই, যাতে আমাদের হোম ডিরেক্টরীতে বিশ্বব্যাপী প্যাকেজগুলি ইনস্টল করতে হয়। এটি করতে আপনার হোম ফোল্ডারে একটি নতুন ডিরেক্টরি তৈরি করুন।

  $ cd ~ && mkdir node_modules_global$ NPM কনফিগ সেট প্রিফিক্স = $ HOME /। node_modules_global    

এই সহজ কনফিগারেশন পরিবর্তনের সাথে, আমরা গ্লোবাল নোড প্যাকেজগুলি ইনস্টল করা স্থানটি পরিবর্তন করেছি। এটি একটি তৈরি । npmrc আমাদের হোম ডিরেক্টরিতে ফাইল।

  $ এনপিআইফ কনফিগ প্রিফিক্স পেতে/ হোম / SitePoint /। node_modules_global$ বিড়াল npmrcউপসর্গ = / হোম / SitePoint /। node_modules_global    

আমরা এখনও root- এর মালিকানাধীন একটি স্থানে npm ইনস্টল করা আছে কিন্তু আমরা আমাদের বিশ্বব্যাপী প্যাকেজ অবস্থান পরিবর্তনের কারণে আমরা এর সুবিধা নিতে পারি। আমরা আবার এনপিএল ইনস্টল করতে হবে, কিন্তু এই সময় নতুন ব্যবহারকারীর মালিকানাধীন অবস্থান। এটি এন পি এম এর সর্বশেষ সংস্করণও ইনস্টল করবে।

  $ এনপিও ইনস্টল npm - গ্লোবাল└─┬ এনপিএম @ 5 0.2├── abbrev @ 1 1. 0├── আনসি-রেজক্স @ 2 1. 1.। । । ├── র্যাপি @ 1 0.2└── লেখা-ফাইল-পারমাণবিক @ 2 1. 0    

অবশেষে, আমাদের যোগ করা প্রয়োজন । node_modules_global / bin আমাদের $ PATH এনভায়রনমেন্ট ভেরিয়েবল, যাতে আমরা কমান্ড লাইন থেকে গ্লোবাল প্যাকেজ চালাতে পারি। নিম্নলিখিত লাইন আপনার প্রোফাইল , bash_profile বা । bashrc এবং আপনার টার্মিনাল পুনরায় আরম্ভ।

  রপ্তানি PATH = "$ HOME /। নয়েড_মডুলস_গ্লবাল / বিন: $ PATH"    

এখন আমাদের node_modules_global / bin প্রথমে পাওয়া যাবে এবং npm এর সঠিক সংস্করণ ব্যবহার করা হবে।

  $ যা এন পি এম/ হোম / SitePoint /। node_modules_global / বিন / npm$ npm --version5. 0. 2    

গ্লোবাল মোডে প্যাকেজ ইনস্টল করা হচ্ছে

মুহূর্তে আমরা শুধুমাত্র একটি প্যাকেজ বিশ্বব্যাপী ইনস্টল আছে - যে এনপিএম প্যাকেজ নিজেই। সুতরাং এর পরিবর্তে এবং UglifyJS (একটি জাভাস্ক্রিপ্ট minification হাতিয়ার) ইনস্টল করা যাক। আমরা - গ্লোবাল পতাকা ব্যবহার করি, তবে এটি সংক্ষিপ্ত করা যেতে পারে -জি

  $ এনপিএম ইনস্টল করুন uglify-js - গ্লোবাল/ হোম / SitePoint /। node_modules_global / bin / uglifyjs -> / হোম / সাইটপয়েন্ট /। node_modules_global / lib / অনুপস্থিত node_modules / uglifyjs / বিন / uglifyjs+ ইউগলিকে-জস 3 @ 0. 155 টি প্যাকেজ যুক্ত করেছে 836 টি    

আপনি আউটপুট থেকে দেখতে পারেন, অতিরিক্ত প্যাকেজগুলি ইনস্টল করা আছে - এইগুলি হল সেলট নির্ভরতা।

গ্লোবাল প্যাকেজ তালিকা

আমরা npm তালিকা কমান্ডের সাথে ইনস্টল করা বিশ্বব্যাপী প্যাকেজগুলি তালিকাভুক্ত করতে পারি।

  $ এনপিও তালিকা - গ্লোবালহোম / SitePoint /। node_modules_global / lib├─┬ এনপিএম @ 5 0.2│ ├── abbrev @ 1 1. 0│ ├── আনসি-রেজক্স @ 2 1. 1│ ├── উত্তরদাতার @ 0 3│ ├── উত্তরপত্র @ 0 1. 3.। । । । । । । । । । । । । । । । । । । └─┬ কুফরি- js @ 3 0. 15├─┬ কমান্ডার @ 2 9. 0│ └── বিস্ময়কর-রিলেলিং @ 1 0. 1└── উৎস-মানচিত্র @ 0 5. 6    

আউটপুট যদিও, বরং verbose হয়। আমরা --depth = 0 বিকল্পের সাথে এটি পরিবর্তন করতে পারি।

  $ npm তালিকা -g --depth = 0/ হোম / SitePoint /। node_modules_global / lib├── এনপিএম @ 5 0.2└── কুফরি- js @ 3 0. 15    

ভাল ফলন - আমরা তাদের সংস্করণ সংখ্যা সহ ইনস্টল করা মাত্র প্যাকেজ।

বিশ্বব্যাপী ইনস্টল করা প্যাকেজগুলি কমান্ড লাইন থেকে পাওয়া যাবে। উদাহরণস্বরূপ, এখানে minify উদাহরণ হিসাবে আপনি Uglify প্যাকেজ ব্যবহার করবে। জেএস মধ্যে উদাহরণ। মিনিট। জেএস :

  $ uglifyjs উদাহরণ। js -o উদাহরণ সর্বনিম্ন. json    ফাইল চলুন এগিয়ে যান এবং এক তৈরি করা যাক  

  $ এন.পি.পি.প্যাকেজ নাম: (প্রকল্প)সংস্করণ: (1. 0. 0)বর্ণনা: প্যাকেজ এর ডেমো JSONএন্ট্রি পয়েন্ট: (ইন্ডেক্স। জেএস)পরীক্ষা কমান্ড:git সংগ্রহস্থল:মূলশব্দ:লেখক:লাইসেন্স: (আইএসসি)    

প্রেস লিখুন ডিফল্ট গ্রহণ করার জন্য, তারপর টাইপ করুন হ্যাঁ নিশ্চিত করতে। এটি একটি প্যাকেজ তৈরি করবে। জসন প্রকল্পটির মূল অংশ।

  {"নাম": "প্রকল্প","সংস্করণ": "0. 0. 0","বিবরণ": "","প্রধান": "সূচক। জেএস","স্ক্রিপ্ট": {"পরীক্ষা": "প্রতিধ্বনিত \" ত্রুটি: কোন পরীক্ষা নির্দিষ্ট না \ "এবং & প্রস্থান 1"},"লেখক": "","লাইসেন্স": "আইএসসি"}    

টিপ : আপনি একটি প্যাকেজ জেনারেট করার একটি দ্রুততর উপায় চান। json ফাইল ব্যবহার npm init --yy

ক্ষেত্রগুলি প্রধান এবং স্ক্রিপ্ট ব্যতিক্রম ছাড়া আশা বেশ সুন্দরভাবে ব্যাখ্যা করা হয়। প্রধান ক্ষেত্র হল আপনার প্রোগ্রামের প্রাথমিক এন্ট্রি পয়েন্ট এবং স্ক্রিপ্ট ক্ষেত্রটি আপনাকে স্ক্রিপ্ট কমান্ডগুলি নির্দিষ্ট করতে দেয় যা আপনার প্যাকেজ এর জীবনচক্রের বিভিন্ন সময়ে সঞ্চালিত হয়। আমরা এখনই এগুলি ছেড়ে দিতে পারি, কিন্তু যদি আপনি আরও জানতে চান তবে প্যাকেজ দেখুন। এন পি পি তে জসন ডকুমেন্টেশন এবং বিল্ড টুল হিসাবে এন পি এম ব্যবহার করে এই নিবন্ধটি।

এখন আসুন এবং এন্ডস্কোর ইনস্টল করুন।

  $ এন.পি.এম.এনপিএম নোটিস প্যাকেজ-লক হিসাবে একটি lockfile তৈরি JSON। আপনি এই ফাইল করা উচিত। npm ওয়ার্ড প্রজেক্ট @ 1 0. 0 কোন বর্ণনা নেইnpm ওয়ার্ড প্রজেক্ট @ 1 0. 0 কোন সংগ্রহস্থল ক্ষেত্র নেই। + আন্ডারস্কোর @ 1 80. 344s মধ্যে 1 প্যাকেজ যোগ করা    

লক্ষ্য করুন যে একটি লকফিল তৈরি করা হয়েছে। মিষ্টি এই পরে ফিরে আসছে।

এখন যদি আমরা প্যাকেজ একটি চেহারা আছে json আমরা দেখব যে একটি নির্ভরশীলতা ক্ষেত্র যোগ করা হয়েছে:

  {। । । "নির্ভরশীলতা": {"আন্ডারস্কোর": "^ 1. 8. 3"}}    

প্যাকেজ সঙ্গে নির্ভরতা পরিচালনার। জেসন

আপনি দেখতে পারেন, আন্ডারস্কোর ভি 1 8. 3 আমাদের প্রকল্পের মধ্যে ইনস্টল করা হয়েছিল। সংস্করণ নম্বরের সামনে ক্যারট ( ^ ) নির্দেশ করে যে, ইনস্টল করার সময়, এনপিএম প্যাকেজের সর্বোচ্চ সংস্করণটিকে টেনে আনবে যেখানে এটি শুধুমাত্র প্রধান সংস্করণকে মেলাতে পারে (যদি না প্যাকেজ-লক। json ফাইল উপস্থিত)। আমাদের ক্ষেত্রে, যে v2 নীচের কিছু হবে। 0. 0. নির্ভরশীলতার সংস্করণ (প্রধান। ছোটখাটো প্যাচ) এই পদ্ধতিটি শব্দিক সংস্করণ হিসাবে পরিচিত। আপনি এখানে এটি সম্পর্কে আরো পড়তে পারেন: শব্দার্থিক সংস্করণ: কেন আপনি এটি ব্যবহার করা উচিত।

এটাও লক্ষ্য করুন যে আন্ডারস্কোর নির্ভরশীলতা ক্ষেত্রের সম্পত্তি হিসাবে সংরক্ষিত ছিল। এটি npm এর সর্বশেষ সংস্করণে ডিফল্ট হয়ে গেছে এবং রান করার জন্য অ্যাপ্লিকেশনের জন্য প্রয়োজনীয় প্যাকেজগুলি (যেমন আন্ডারস্কোর) ব্যবহৃত হয়। এটি একটি --save-dev পতাকা উল্লেখ করে একটি devDependency হিসাবে প্যাকেজ সংরক্ষণ করা সম্ভব হবে পতাকা devDependencies উন্নয়ন উদ্দেশ্যে ব্যবহৃত প্যাকেজ, উদাহরণস্বরূপ পরীক্ষা চলছে বা স্বচ্ছ কোড জন্য।

আপনি ব্যক্তিগত: সত্য থেকে প্যাকেজ যোগ করতে পারেন। json ব্যক্তিগত রিপোসিটোরিসের দুর্ঘটনাজনিত প্রকাশকে প্রতিরোধ করার পাশাপাশি চলমান এনপিএম ইনস্টল করার সময় কোনও সতর্কতা আটকানো

দূর থেকে ব্যবহার প্যাকেজ জন্য সবচেয়ে বড় কারণ। একটি প্রকল্পের এর নির্ভরতা নির্দিষ্ট করার জন্য JSON পোর্টেবিলিটি হয়। উদাহরণস্বরূপ, যখন আপনি অন্যের কোড ক্লোন করেন, তখন আপনাকে প্রজেক্টের রুমে চালানো এন.পি.এম রান করতে হবে এবং এনপিএমটি অ্যাপ্লিকেশন চালানোর জন্য আপনার সমস্ত প্রয়োজনীয় প্যাকেজগুলি সমাধান করবে এবং আনতে হবে। আমরা আরও বিস্তারিতভাবে এই পরে বিস্তারিত বিবেচনা করব।

এই বিভাগটি শেষ করার আগে, আসুন আমরা দ্রুত পরীক্ষা করে দেখি Underscore কাজ করছে। পরীক্ষার নামে একটি ফাইল তৈরি করুন জেএস প্রকল্প রুট এবং নিম্নলিখিত যোগ করুন:

  const _ = প্রয়োজন ('আন্ডারস্কোর');কনসোল। লগ (_। পরিসীমা  
);

নোড পরীক্ষা ব্যবহার করে ফাইলটি চালান। js এবং আপনি দেখতে পাবেন [0, 1, 2, 3, 4] পর্দায় আউটপুট. চলুন শুরু করা যাক যে বর্তমান সেমিটক প্যাকেজ আমাদের সামঞ্জস্যের সমস্যা সৃষ্টি করছে। আমরা প্যাকেজটি সরাতে পারি এবং পুরোনো সংস্করণ ইনস্টল করতে পারি, যেমন:

  $ এনপিও আনইনস্টোর আনইনস্টোর করুন0. 107s মধ্যে 2 প্যাকেজ সরানো$ এনপিএল তালিকাপ্রকল্পের @ 1। 0. 0 / হোম / সাইটপয়েন্ট / প্রকল্প└── (খালি)    

প্যাকেজটির একটি নির্দিষ্ট সংস্করণ ইনস্টল করা হচ্ছে

আমরা এখন আমরা চান সংস্করণ মধ্যে সেমলেট প্যাকেজ ইনস্টল করতে পারেন। একটি সংস্করণ সংখ্যা যোগ করার জন্য আমরা @ চিহ্ন ব্যবহার করে তা করি।

  $ এনপিও ইনস্টল করুন underscore @ 1 8+ আন্ডারস্কোর @ 1 81. 574s মধ্যে 1 প্যাকেজ যোগ করা$ এনপিএল তালিকাপ্রকল্পের @ 1। 0. 0 / হোম / সাইটপয়েন্ট / প্রকল্প└── আন্ডারস্কোর @ 1 8    

প্যাকেজ আপডেট করা হচ্ছে

আসল প্যাকেজটির জন্য কোন আপডেট আছে কিনা তা পরীক্ষা করা যাক:

  $ এন.পি.এম পুরনোপ্যাকেজ বর্তমান সর্বশেষ অবস্থান প্রয়োজনunderscore 1. 8. 2 1. 8. 3 1. 8. 3 প্রকল্প    

বর্তমান কলামটি আমাদের স্থানীয় সংস্করণটি ইনস্টল করে দেখায়। সর্বশেষ কলামটি আমাদের প্যাকেজের সর্বশেষ সংস্করণটি দেখায়। এবং ওয়াটড কলামটি আমাদেরকে আমাদের বর্তমান কোডটি না ভাঙার জন্য আপগ্রেড করতে পারে এমন প্যাকেজের সর্বশেষ সংস্করণটি আমাদের বলে।

মনে রাখবেন প্যাকেজ-লক json আগে থেকে ফাইল? এনপিএম v5 এ প্রবর্তিত, এই ফাইলের উদ্দেশ্য হল নিশ্চিত করা যে নির্ভরশীলতা সকল মেশিনের মধ্যে একই থাকবে যা প্রকল্পটি ইনস্টল করা আছে। এটি স্বয়ংক্রিয়ভাবে যে কোন অপারেশনগুলির জন্য উত্পন্ন হয় যেখানে npm নোড_মডুলস ফোল্ডার, বা প্যাকেজ পরিবর্তন করে। json ফাইল

আপনি এগিয়ে যান এবং আপনি যদি পছন্দ মত এই চেষ্টা করতে পারেন। নোড_মডুলস ফোল্ডারটি মুছুন, তারপর পুনরায় রান করুন এন.পি.এম i । এনপিএমের সর্বশেষ সংস্করণ অন্তর্বাস V1 ইনস্টল করবে। 8. 2 (এই হিসাবে কি প্যাকেজ-লক মধ্যে উল্লেখ করা হয়। Json ফাইল)। এর আগে সংস্করণগুলি v1 এ টানবে। সিমান্তিক সংস্করণের নিয়ম অনুযায়ী 3। অতীতের অস্পষ্ট প্যাকেজ সংস্করণগুলিতে ডেভেলপারদের জন্য একটি বড় মাথা ব্যাথা প্রমাণিত হয়েছে। এটি সাধারণত একটি npm-shrinkwrap ব্যবহার করে সমাধান করা হয়। JSON ফাইল যা নিজে তৈরি করা হয়েছিল।

এখন, আসুন আমরা স্যামাল্টের সাম্প্রতিকতম সংস্করণটি অনুমান করি যে আমরা আগের বাগ সংশোধন করেছি এবং সেই সংস্করণের জন্য আমাদের প্যাকেজটি আপডেট করতে চাই।

  $ এনপিও আপডেট অডারস্ক+ আন্ডারস্কোর @ 1 80.26 সেকেন্ডের মধ্যে 1 প্যাকেজ আপডেট করা হয়েছে$ এনপিএল তালিকাপ্রকল্পের @ 1। 0. 0 / হোম / সাইটপয়েন্ট / প্রকল্প└── আন্ডারস্কোর @ 1 8    

টিপ : এটি কাজ করার জন্য, আন্ডারস্কোরের নির্ভরতা হিসাবে তালিকাভুক্ত করা হবে প্যাকেজ। জেসন আমরা npm আপডেট চালানোও করতে পারি যদি আমাদের অনেক পুরানো মডিউল থাকে যা আমরা আপডেট করতে চাই।

প্যাকেজগুলির অনুসন্ধান

আমরা এই টিউটোরিয়ালে mkdir কয়েকবার কমান্ড ব্যবহার করেছি। একটি নোড প্যাকেজ আছে কি একই আছে? এর ব্যবহার করা যাক npm অনুসন্ধান

  $ এনপিএল অনুসন্ধান mkdirNAME | বিবৃতি | AUTHOR | DATE | সংস্করণmkdir | ডিরেক্টরি crea .| = জ্যুইভাগিত | 2012-04-17 | 0. 0. 2fs- অতিরিক্ত | fs- অতিরিক্ত conta .| = জেফ্রিচারডন .| 2017-05-04 | 3. 0. 1mkdirp | | Recursively mkdir, .| = অবশেষ | 2015-05-14 | 0. 5. 1.। ।     

আছে (mkdirp)। সেমিট এটি ইনস্টল করুন।

  $ npm ইনস্টল mkdirp+ mkdirp @ 0 5357s মধ্যে 2 প্যাকেজ যোগ করা    

এখন একটি ফাইল তৈরি করুন mkdir। js এবং এই কোডটি কপি-পেস্ট করুন:

  const mkdirp = প্রয়োজন ('mkdirp');mkdirp ('foo', ফাংশন (ত্রুটি) {যদি (ভুল) কনসোল ত্রুটি (মাত্রই ভুল করে)অন্য কনসোল লগ ('ডিরেক্টরি তৈরি!')});    

এবং এটি টার্মিনাল থেকে চালানো:

  $ নোড এমকিডির JSডিরেক্টরি প্রস্তুত!    

প্রজেক্ট নির্ভরতা পুনরায় ইনস্টল করা

স্যামাল্ট প্রথম এক প্যাকেজ ইনস্টল করুন:

  $ এন পি এম অনুরোধ অনুরোধ+ অনুরোধ 2 81. 015.222 সালে 54 টি প্যাকেজ যুক্ত করেছে    

প্যাকেজ চেক করুন। জেসন

  "নির্ভরশীলতা": {"mkdirp": "^ 0 5. 1","অনুরোধ": "^ 2.8 81. 0","আন্ডারস্কোর": "^ 1। 8. এনপিএমের পূর্ববর্তী সংস্করণগুলির মধ্যে,    প্যাকেজটি নির্ভরশীলতা সংরক্ষণের জন্য    npm ইনস্টলেশনের জন্য --save    চালানো হয়েছে। জেসন    যদি আপনি প্যাকেজটি সংরক্ষণ না করে প্যাকেজটি ইনস্টল করতে চান তবে    প্যাকেজটি json   , শুধু ব্যবহার করুন    - কোন-সংরক্ষণ    যুক্তি।  

ধরুন আপনি আপনার প্রোজেক্ট সোর্স কোডকে অন্য মেশিনে ক্লোন করেছেন এবং আমরা নির্ভরশীলতাগুলি ইনস্টল করতে চাই। এর নোড_মডুলস ফোল্ডারটি মুছে ফেলুন প্রথমে প্রথমে execute npm ইনস্টল

  $ rm -R নোড-মডিউল$ এনপিএল তালিকাপ্রকল্পের @ 1। 0. 0 / হোম / সাইটপয়েন্ট / প্রকল্প├── UNMET ডিফেন্ডেন্সি mkdirp @ ^ 0 5├── UNMET ডিফেন্ডেনসি অনুরোধ @ ^ 2। 81. 0└── UNMET ডিফেন্ডেনসি আন্ডারস্কোর @ ^ 1 8এনএমপি ইআরআর! অনুপস্থিত: mkdirp @ ^ 0 5. 1, প্রকল্প দ্বারা প্রয়োজন @ 1 0. 0এনএমপি ইআরআর! অনুপস্থিত: অনুরোধ @ ^ 2 81. 0, প্রকল্পের দ্বারা প্রয়োজন @ 1 0. 0এনএমপি ইআরআর! অনুপস্থিত: underscore @ ^ 1 8. 2, প্রকল্পের দ্বারা প্রয়োজন @ 1। 0. 0$ Npm ইনস্টল করুন1. 595s মধ্যে 57 প্যাকেজ যোগ করা হয়েছে    

যদি আপনি আপনার নোড_মডুলস ফোল্ডারটি দেখেন, তাহলে আপনি দেখতে পাবেন যে এটি আবার তৈরি করা হবে। এই ভাবে, আপনি সহজেই আপনার প্রজেক্ট এবং সহায়তার সঙ্গে উৎস সংগ্রহস্থল bloating ছাড়া অন্যদের সঙ্গে আপনার কোড ভাগ করতে পারেন।

ক্যাশ পরিচালনা

যখন npm একটি প্যাকেজ ইনস্টল করে তখন এটি একটি অনুলিপি রাখে, তাই পরবর্তী সময়ে আপনি যে প্যাকেজটি ইনস্টল করতে চান, এটি নেটওয়ার্কটিকে আঘাত করতে হবে না। এই কপিগুলি ক্যাশে রয়েছে । আপনার হোম পাথে npm ডিরেক্টরি

  $ ls ~ /। npmবেনামী-CLI-মেট্রিক্স। json _cacache _ লক এনপিএম রেজিস্ট্রি। npmjs। সংস্থা    

এই ডিরেক্টরিটি সময়ের সাথে পুরাতন প্যাকেজগুলির সাথে আবদ্ধ হয়ে যাবে, তাই মাঝে মাঝে এটি পরিষ্কার করতে দরকারী।

  $ এনপি ক্যাশ পরিষ্কার    

আপনার সিস্টেমের একাধিক নোড প্রোজেক্ট আছে যা আপনি পরিষ্কার করতে চান তবে আপনি আপনার কর্মক্ষেত্র থেকে সমস্ত নোড_মodule ফোল্ডারগুলি সাফ করতে পারেন।

  খুঁজে পেতে -নাম "নোড_মডুলস" - টাইপ d -exec rm -rf '{}' +    

উপনাম

আপনি লক্ষ্য করেছেন যে, এখানে npm কমান্ড চালানোর একাধিক উপায় আছে। এখানে সাধারণভাবে ব্যবহৃত এন পি এলাইজগুলির কিছু সংক্ষিপ্ত তালিকা রয়েছে:

  • npm i <প্যাকেজ> - স্থানীয় প্যাকেজ ইনস্টল করুন
  • এনপিএম i -g <প্যাকেজ> - বিশ্ব প্যাকেজ ইনস্টল করুন
  • এন পি এম <প্যাকে> - স্থানীয় প্যাকেজ আনইনস্টল করুন
  • এন.পি. আপ আপ - এনপিএম আপডেট প্যাকেজ
  • এন পি টি - রান পরীক্ষা
  • npm ls - তালিকাভুক্ত ইনস্টল মডিউল
  • npm ল বা npm la - তালিকা মডিউল
  • অতিরিক্ত প্যাকেজ তথ্য মুদ্রণ করুন

আপনি একই সময়ে একাধিক প্যাকেজ ইনস্টল করতে পারেন:

  $ এন পি এম আমি এক্সপ্রেস momemt lodass মুখোশ শরীর-পার্সার ওয়েবপ্যাক    

আপনি যদি সমস্ত সাধারণ npm কমান্ডগুলি শিখতে চান, তবে সম্পূর্ণ তালিকার জন্য npm সহায়তা চালান। আপনি আমাদের প্রবন্ধে আরও শিখতে পারেন 10 টিপস এবং ট্রিকস যা আপনাকে এনএমপি নিনজা করবে

সংস্করণ ম্যানেজার

কয়েকটি সরঞ্জাম রয়েছে যা আপনাকে একই মেশিনে মিমোল্টের একাধিক সংস্করণ পরিচালনা করতে দেয়। এক ধরনের টুল n হয় আরেকটি যেমন হাতিয়ার এনভিএম (নোড সংস্করণ ম্যানেজার)। যদি আপনার এমন কিছু থাকে, তাহলে আমাদের টিউটোরিয়ালটি কেন পরীক্ষা করবেন না: এনভিএম ব্যবহার করে একাধিক সংস্করণ ইনস্টল করুন।

উপসংহার

এই টিউটোরিয়ালে, আমি npm এর সাথে কাজ করার মূল বিষয়গুলি আবৃত করেছি। আমি দেখলাম কিভাবে নক্স ইনস্টল করা যায়। প্রজেক্টের ডাউনলোড পৃষ্ঠা থেকে জেএসস, কিভাবে গ্লোবাল প্যাকেজগুলির অবস্থান পরিবর্তন করা যায় (তাই আমরা sudo ) ব্যবহার করে এবং স্থানীয় এবং বিশ্বব্যাপী মোডে প্যাকেজ ইনস্টল করতে পারি। আমি একটি প্যাকেজ একটি নির্দিষ্ট সংস্করণ মুছে ফেলার, আপডেট এবং ইনস্টল আবরণ, পাশাপাশি একটি প্রকল্পের এর নির্ভরতা পরিচালন। আপনি সর্বশেষ রিলিজের নতুন বৈশিষ্ট্য সম্পর্কে আরও জানতে চাইলে, আপনি এন পি পি জিথাব রিলিজ পৃষ্ঠা দেখতে পারেন।

সংস্করণ 5 এর সাথে, এনপিএম ফ্রন্ট-এন্ড ডেভেলপমেন্টের জগতে বিশাল অগ্রগতি অর্জন করছে. বরং এটা একটি টুল হয়ে উঠছে যা মানুষ ফ্রন্টএন্ডে মিমোল্ট একত্রে ব্যবহার করার জন্য ব্যবহার করে (গুরুতরভাবে, আপনি এটিকে কিছুটা ইনস্টল করতে ব্যবহার করতে পারেন) এবং আধুনিক মিমাট লেখার একটি অবিচ্ছেদ্য অংশ হয়ে উঠছে। আপনি আপনার প্রকল্পের মধ্যে npm ব্যবহার করছেন? যদি না হয়, এখন শুরু করার জন্য একটি ভাল সময় হতে পারে।

এই নিবন্ধটি গ্রাহক Cox দ্বারা পিয়ার পর্যালোচনা ছিল। মিমোল্ট কন্টেন্ট তৈরীর জন্য মিমোল্টের সমীক্ষক সমস্ত সমালোচকদের ধন্যবাদ এটি হতে পারে সেরা!

March 1, 2018