উত্তর:
process.env.ENV_VARIABLE
ENV_VARIABLEআপনি যে পরিবর্তনশীলটির অ্যাক্সেস করতে চান তার নাম কোথায় ।
এর জন্য নোড.জেএস ডক্সprocess.env দেখুন ।
process.env.FOO = "foo";কাজ করে।
process.envসুরক্ষা কারণে স্যানিটাইজ করা হয়। কেবল যে পরিবর্তনগুলি শুরু হয় REACT_ENV_তা উপলব্ধ। দেখুন: github.com/facebookincubator/create-react-app/blob/master/…
REACT_APP_
নোড.জেএস ব্যবহার করার সময় , আপনি process.envবস্তু থেকে কী দ্বারা পরিবেশের পরিবর্তনগুলি পুনরুদ্ধার করতে পারেন :
উদাহরণ স্বরূপ
var mode = process.env.NODE_ENV;
var apiKey = process.env.apiKey; // '42348901293989849243'
এখানে এমন উত্তর যা নোড.জেজে পরিবেশের ভেরিয়েবল নির্ধারণের ব্যাখ্যা দেবে
process.envতে অন্তর্নির্মিত।
আপনি যদি আপনার নোড.জেএস প্রোগ্রামটিতে উত্পন্ন স্ট্রিং কী ব্যবহার করতে চান তবে বলুন var v = 'HOME', আপনি ব্যবহার করতে পারেন
process.env[v]।
অন্যথায়, process.env.VARNAMEআপনার প্রোগ্রামটিতে হার্ডকোড করতে হবে।
process.env['HOME']?
নোড.জেএস-এ পরিবেশগত পরিবর্তনগুলি পুনরুদ্ধার করতে আপনি প্রক্রিয়া.এনভি.ভি.আর.আই.বি.এল.বি.এস ব্যবহার করতে পারেন তবে ভুলে যাবেন না যে প্রক্রিয়া.এনভি-তে একটি সম্পত্তি অর্পণ করা স্পষ্টতই মানটিকে একটি স্ট্রিতে রূপান্তর করবে।
এমনকি আপনার .env ফাইলটি SHOULD_SEND = মিথ্যা বা SHOULD_SEND = 0 এর মতো একটি চলক নির্ধারণ করে , মানগুলি স্ট্রিংগুলিতে রূপান্তরিত হবে ( যথাক্রমে "মিথ্যা" এবং "0" ) এবং বুলিয়ান হিসাবে ব্যাখ্যা করা হবে না।
if (process.env.SHOULD_SEND) {
mailer.send();
} else {
console.log("this won't be reached with values like false and 0");
}
পরিবর্তে, আপনার সুস্পষ্ট চেক করা উচিত। আমি পেয়েছি পরিবেশের নামের উপর নির্ভর করে অনেক দীর্ঘ।
db.connect({
debug: process.env.NODE_ENV === 'development'
});
আপনি প্রতি প্রকল্পে আপনার পরিবেশের ভেরিয়েবলগুলি পরিচালনা করতে env প্যাকেজটি ব্যবহার করতে পারেন :
.envপ্রকল্প ডিরেক্টরিতে একটি ফাইল তৈরি করুন এবং আপনার ভেরিয়েবলগুলি সেখানে রাখুন।require('dotenv').config();সম্পন্ন. এখন আপনি এর সাথে আপনার পরিবেশের ভেরিয়েবলগুলি অ্যাক্সেস করতে পারেন process.env.ENV_NAME।
envলাইব্রেরি থেকে এনভ ভেরিয়েবলগুলি পরিচালনা এবং লোড করুন ।
envdirইউটিলিটিটি ব্যবহার করে আপনি নন-নোড.জেএস-নির্দিষ্ট উপায়ে এটি করতে পারেন ।
nodeস্পেসিফিক নয় ।
এগুলি .bash_profileফাইলের ব্যবহারকারী ডিরেক্টরিতে কেন ব্যবহার করবেন না , তাই আপনাকে আপনার ভেরিয়েবলগুলির সাথে কোনও ফাইলকে উত্পাদনে ঠেলাতে হবে না?
env, নোড প্রক্রিয়া চলমান অবস্থায় আপনি অন্য শেল উইন্ডোতে গুলি চালালে বা নোড প্রক্রিয়াটি প্রস্থান করার পরে একই শেলটিতে না থাকলে এটি দৃশ্যমান হবে না ।