উত্তর:
থেকে npm-লিঙ্ক ডকুমেন্টেশন :
স্থানীয় মডিউল ডিরেক্টরিতে:
$ cd ./package-dir
$ npm link
মডিউলটি ব্যবহার করতে প্রকল্পের ডিরেক্টরিতে:
$ cd ./project-dir
$ npm link package-name
অথবা একসাথে আপেক্ষিক পথ ব্যবহার করুন:
$ cd ./project-dir
$ npm link ../package-dir
এটি হুডের নীচে দুটি কমান্ড ব্যবহার করার সমতুল্য।
npm link
বাহ্যিক নির্ভরতার দ্বিতীয় উদাহরণ তৈরি করবে। সুতরাং আপনার যদি প্যাকেজ এ এবং বি এবং সি প্রয়োজন হয়, বি সি প্রয়োজন হয় লিঙ্ক বি এর ফলে অ্যাপ্লিকেশন এ দুটি সি এর দুটি দৃষ্টান্ত তৈরি করবে
আপনি কেবল একটি <folder>
যুক্তি সরবরাহ করেন npm install
, যুক্তিটি প্যাকেজের নামের পরিবর্তে স্থানীয় ফোল্ডারের দিকে নির্দেশ করা উচিত:
npm install /path
rm -rf node_modules
আগে এবং npm install
পরে আপনার পক্ষে ভাল লাগল ।
যেহেতু একই ব্যক্তির জিজ্ঞাসা করা হয়েছে এবং উত্তর দেওয়া হয়েছে, আমি একটি এনপিএম লিঙ্ক যুক্ত করব বিকল্প হিসাবে একটি ।
ডক্স থেকে:
এটি আপনার নিজের স্টাফ ইনস্টল করার জন্য সহজ, যাতে আপনি এটিতে কাজ করতে পারেন এবং ক্রমাগত পুনর্নির্মাণ না করে পুনরুক্তি পরীক্ষা করতে পারেন।
cd ~/projects/node-bloggy # go into the dir of your main project
npm link ../node-redis # link the dir of your dependency
[সম্পাদনা] এনপিএম ২.০ হিসাবে, আপনি প্যাকেজ.জসনে স্থানীয় নির্ভরতা ঘোষণা করতে পারেন
"dependencies": {
"bar": "file:../foo/bar"
}
npm link
একবার ফোল্ডারটির বিরুদ্ধে চালানো দরকার (গ্লোবাল সিমলিংক তৈরি করতে) এবং তারপরে npm link package-name
প্রকল্পের ফোল্ডারের মধ্যে চালানো উচিত (আপনার প্রকল্পে গ্লোবাল সিমলিংকটি ব্যবহার করতে)। নীচের উত্তরটি সঠিক উত্তর।
file:
অ্যাপ্লিকেশন ( পদ্ধতির ব্যবহার করে ) আমার অ্যাপ্লিকেশন এবং স্থানীয় মডিউলকে নির্ভরতা ভাগ করার অনুমতি দিয়েছে allowed আমার পরীক্ষার npm link
ফলে একটি সদৃশ নির্ভরতা হয়েছিল, যা নির্ভরতাটিকে সিঙ্গলটন হিসাবে ব্যবহার করার প্রয়োজন হলে জিনিসগুলি ভেঙে দেয়।
npm pack
+ + package.json
এটিই আমার পক্ষে কাজ করেছে:
module project
, এক্সিকিউট npm pack
:এটি একটি নির্মাণ করবে <package-name>-<version>.tar.gz
ফাইল ।
consumer project
আদর্শভাবে আপনি এই সমস্ত ফাইল tmp
আপনার consumer-project
মূলের একটি ফোল্ডারে রাখতে পারেন :
package.json
:"dependencies": {
"my-package": "file:/./tmp/my-package-1.3.3.tar.gz"
}
Install
প্যাকেজগুলি:npm install
বা npm i
বাyarn
consumer-project's node_modules
ফোল্ডারে পাওয়া উচিত ।শুভকামনা ...
স্থানীয় মডিউলে যদি পিয়ার নির্ভরতা থাকে যা আপনি কেবল আপনার প্রকল্পের আওতায় ইনস্টল করতে চান তবে এই পদ্ধতির ( npm link
বা package.json
ফাইল নির্ভরতা) কোনওটিই কাজ করে না।
উদাহরণ স্বরূপ:
/local/mymodule/package.json:
"name": "mymodule",
"peerDependencies":
{
"foo": "^2.5"
}
/dev/myproject/package.json:
"dependencies":
{
"mymodule": "file:/local/mymodule",
"foo": "^2.5"
}
এই দৃশ্যে, এনপিএম myproject
এর node_modules/
মত সেট আপ করে :
/dev/myproject/node_modules/
foo/
mymodule -> /local/mymodule
যখন নোড লোড হয় mymodule
এবং এটি হয় require('foo')
, নোড mymodule
সিমিলিংককে সমাধান করে এবং তারপরে কেবল /local/mymodule/node_modules/
(এবং এর পূর্বপুরুষদের) সন্ধান করে foo
যা এটি খুঁজে পায় না। পরিবর্তে, আমরা নোডটি দেখতে চাই /local/myproject/node_modules/
, যেহেতু আমাদের প্রকল্পটি কোথা থেকে চালু ছিল এবং কোথায় foo
ইনস্টল করা হয়েছে।
সুতরাং, আমরা হয় একটি উপায় নোড জানানোর জন্য প্রয়োজন না এই সিমবলিক লিঙ্ক সমাধান যখন খুঁজছেন foo
, অথবা আমরা একটি উপায় একটি ইনস্টল করতে npm বলতে চাই কপি এর mymodule
কখন ফাইলটি নির্ভরতা সিনট্যাক্স ব্যবহার করা হয় package.json
। দুর্ভাগ্যক্রমে: আমি কোনওভাবেই উপায় করার উপায় পাইনি (
NODE_PATH
নির্দেশ করতে হবে । সুতরাং উপরে ক্ষেত্রে জন্য, এটা এই হবে: অর্থাৎ পারবেন এটি । node_modules/
foo
NODE_PATH=/dev/myproject/node_modules/
mymodule
foo
পূর্ববর্তী লোকেরা যেমন উত্তর দিয়েছে npm --save ../location-of-your-packages-root-directory
। ../location-of-your-packages-root-directory
তবে যাতে এটা কাজ করার জন্য দুটি জিনিস থাকতে হবে।
1) package.json
যে ডিরেক্টরিতে নির্দেশিত
2) main
সম্পত্তি package.json
সেট এবং করা আবশ্যক কাজ Ig "main": "src/index.js",
যদি জন্য এন্ট্রি ফাইলে ../location-of-your-packages-root-directory
হয়../location-of-your-packages-root-directory/src/index.js