আমি কীভাবে একটি আলাদা ডিরেক্টরিতে এনপিএম শুরু করতে পারি?


292

আমি সাধারণত cdঅ্যাপ ডিরেক্টরিতে প্রবেশ করি এবং তারপরে চালনা করি npm start

এটি আমার অনুভূতি যে কোনও npm startপ্যারামিটার দিয়ে চালানোর কোনও উপায় হওয়া উচিত । তবে, এনপিএম স্টার্ট ডকুমেন্টেশনে এ জাতীয় কোনও বৈশিষ্ট্য নেই।

আমি চেষ্টা করেছি কেবলমাত্র কাজ করার চেষ্টা npm start ./myappকরে। এটা করার কোন উপায় আছে?

উত্তর:


473

এই ওয়ান-লাইনের কাজ করা উচিত:

npm start --prefix path/to/your/app

সংশ্লিষ্ট ডক


18
কাজ করছে না. বর্তমান ডিরেক্টরিতে package.json সন্ধান করার চেষ্টা করা হচ্ছে।
শাশ্বত কুমার

@ শাশ্বতকুমার আপনি কি কখনও এই কাজ করার কোনও উপায় খুঁজে পেয়েছেন?
রসালো

3
আমি এই কমান্ডটি কেবল একটি ফোল্ডারে চালানোর জন্য পরীক্ষা করেছি package.jsonএবং এনপিএম সঠিকভাবে অনুসরণ করতে ডানটি path/to/your/appসন্ধান করেছে package.json। আপনি এনপিএম এর কোন সংস্করণ ব্যবহার করছেন?
অ্যামুরি লাইট

3
নোড 10.x এবং এনপিএম 6.9.0 সহ ম্যাকোএস 10.14.x এ চলছে ওয়ান-লাইনার পুরোপুরি কাজ করেছে। ধন্যবাদ.
টড

3
--prefixএখানে দস্তাবেজগুলি : ডকস.এনএমজেজেস
কনফিগ

88

কমান্ডের নীচে যেখানে projectএকটি ফোল্ডার রয়েছে যেখানে package.jsonফাইল রয়েছে

npm run --prefix project ${COMMAND}

পাশাপাশি কাজ করছে। ডকার ভিত্তিক অ্যাপ্লিকেশনগুলিতে দরকারী।


21

npm start --prefix path/to/your/app

& ভিতরে প্যাকেজ.জসন নিম্নলিখিত স্ক্রিপ্ট যুক্ত করুন

"scripts": {
   "preinstall":"cd $(pwd)"
}

6
আপনি কি ব্যাখ্যা করতে পারবেন প্রিনস্টল স্ক্রিপ্টটি কী করে?
জুনভার

এটি ক্রস প্ল্যাটফর্ম নয়। এটি কেবল ইউনিক্সে কাজ করে উইন্ডোজের মতো বিজোড়-বলগুলিতে নয়।
জ্যাক গিফিন

18

আমি গুগল থেকে এখানে এসেছি যাতে এটি অন্যের সাথে প্রাসঙ্গিক হতে পারে: yarnআপনি ব্যবহার করতে পারেন:

yarn --cwd /path/to/your/app run start 

6

এই ওয়ান-লাইনারটিও কাজ করা উচিত:

(cd /path/to/your/app && npm start)

নোট করুন যে এই কমান্ডটি কার্যকর করার পরে বর্তমান ডিরেক্টরিটি / পথে / আপনার / অ্যাপে পরিবর্তিত হবে। কাজের ডিরেক্টরি সংরক্ষণ করার জন্য:

(cd /path/to/your/app && npm start && cd -)

আমি এই সমাধানটি ব্যবহার করেছি কারণ একটি প্রোগ্রাম কনফিগারেশন ফাইল যা আমি আবার সম্পাদনা করছিলাম তখন কমান্ড লাইন যুক্তি উল্লেখ করে সমর্থন করে না।


2
"-1" বোতামটি ব্যবহার করার সময় দয়া করে একটি মন্তব্য যুক্ত করুন যাতে দর্শনার্থীদের একটি ক্লু থাকে "কেন এটি ঠিক নয়" ...
সাইরিল CHAPON

6
আমি ডাউনভোট করিনি। তবে আমি বিশ্বাস করি যে এটি পার্শ্ব প্রতিক্রিয়াগুলির কারণে হ্রাস পেয়েছে। সমাধানটি খাঁটি নয়, এটি বর্তমান ডিরেক্টরি পরিবর্তন করে।
ভ্লাদিমির সেরিখ

এটি আসলে একটি খুব সাধারণ সমাধান, উল্লিখিত পার্শ্ব প্রতিক্রিয়াগুলি এড়াতে প্যারেন্সেসিস যুক্ত করা কেবল একমাত্র উন্নতি হবে। তবে উপরের সমাধানগুলি আমার অপশনে আরও ভাল, কারণ তারা নিখুঁতভাবে এনপিএম নির্ভর করে।
রাফাł Wrzeszcz

cd -পার্শ্ব প্রতিক্রিয়া অপসারণ করতে আপনি শেষে যুক্ত করতে পারেন।
বাবকা

@ বাবকা npm startব্যর্থ না হলে ... আপনার এটি একাধিক বিবৃতিতে ভাঙতে হবে
আন্দ্রেস

2

এই এনপিএম ইস্যু তালিকার উপরে , এনপিএম কনফিগারেশনের মাধ্যমে প্রায় এক কাজ করা যেতে পারে

name: 'foo'
config: { path: "baz" },
scripts: { start: "node ./$npm_package_config_path" }

উইন্ডোজ অধীনে, scriptsহতে পারে{ start: "node ./%npm_package_config_path%" }

তারপরে নীচের মত কমান্ড লাইনটি চালান

npm start --foo:path=myapp

ডাউনলোড করা প্যাকেজগুলির জন্য কী স্ক্রিপ্ট করতে পারে? মনে করুন আমি ডাউনলোড করা এনপিএম প্যাকেজ থেকে জেএস ফাইলটি অ্যাক্সেস করতে চাই
হার্ডিক রানা
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.