Pembolehubah Persekitaran: pengenalan yang sangat singkat untuk pembangunan JS

WBOY
Lepaskan: 2024-09-06 11:01:30
asal
988 orang telah melayarinya

Environment Variables: a very short intro for JS development

Artikel ini bertujuan untuk menjadi penyiasatan singkat ke dalam pembolehubah persekitaran untuk diri saya sendiri, maka gaya ringkasnya

Asasnya

  • terminal ialah apl yang benar-benar emulator terminal
  • Kami menggunakan terminal berinteraksi dengan shell
  • Cangkang boleh menghasilkan proses, seperti program Javascript melalui aplikasi lain, seperti nod
    • cth. cangkerang -> nod -> index.js
  • Apabila kami membuka terminal sesi baharu dicipta dalam shell
  • Sesi ini mempunyai pembolehubah yang boleh dikaitkan dengannya (cth. echo $USER mencetak nama pengguna semasa)

nod

Dalam nod, pembolehubah persekitaran diakses melalui proses global.env

console.log(process.env.USER); // username
Salin selepas log masuk
  • Aplikasi biasanya mengakses rahsia atau data berkaitan konfigurasi melalui pembolehubah persekitaran
    • cth. process.env.DB_CONNECTION
    • Ini berguna kerana kami ingin merahsiakan rahsia, dan bukan setiap pengguna akan mempunyai keperluan konfigurasi yang sama — ini membolehkan penyahgandingan logik dan konfigurasi yang lebih baik

kaedah untuk memuatkan pembolehubah

Terdapat beberapa cara kami boleh menjadikan pembolehubah ini tersedia untuk program kami.

(1) menjadikannya tersedia melalui baris arahan:

Agak mudah — cuma panggil arahan dengan pembolehubah dalam baris arahan.

DB_CONNECTION="postgresql://username:password@host:port/database_name" node index.js
Salin selepas log masuk

(2) menyimpannya dalam fail .env

Fail

.env terdiri daripada KUNCI dan NILAI yang dipisahkan oleh tanda sama.

DB_CONNECTION="postgresql://username:password@host:port/database_name"
Salin selepas log masuk

Fail ini adalah perkara biasa dan terdapat beberapa cara untuk menyediakannya kepada aplikasi anda.

direnv

Gunakan alat seperti direnv yang memuatkan pembolehubah daripada fail menjadikannya tersedia dalam cangkerang; ia biasanya dipasang secara global.

Secara lalai direnv mencari fail .envrc, tetapi ia boleh menggunakan .env juga, lihat di sini untuk mengkonfigurasinya untuk berbuat demikian.

dotenv

Gunakan alat seperti dotenv yang memuatkan pembolehubah daripada fail dan menjadikannya tersedia dalam process.env.

direnv vs dotenv

Terdapat kebaikan dan keburukan bagi setiap kaedah.

Menggunakan direnv ialah agnostik bahasa dan bermakna satu kurang pergantungan, tetapi ini juga bermakna pengguna aplikasi anda memerlukan cara mereka sendiri untuk memuatkan pembolehubah persekitaran jika tidak menggunakan direnv;

Menggunakan dotenv memastikan pengguna aplikasi hanya boleh menggunakan fail .env tanpa kebimbangan, tetapi ia menambah pakej hanya untuk melakukan sesuatu yang shell boleh lakukan secara asli.

bendera nod

Node baru-baru ini menyertakan sokongan (v20.6.0) untuk menggunakan fail .env secara langsung.

Bendera perlu digunakan

node --env-file=.env index.js
Salin selepas log masuk

Seperti dotenv, ini menjadikan kandungan .env tersedia dalam process.env.

Ringkasan

  • pembolehubah persekitaran ialah teknologi asli dari cangkerang
  • terdapat beberapa cara berbeza untuk memuatkannya — secara langsung, direnv, dotenv, nod
  • direnv memuatkan pembolehubah ke dalam shell anda, tetapi dotenv dan nod hanya menyediakannya untuk aplikasi anda melalui process.env
  • jika menggunakan nod, anda mungkin harus memilih untuk menggunakan bendera --env-file baharu

Atas ialah kandungan terperinci Pembolehubah Persekitaran: pengenalan yang sangat singkat untuk pembangunan JS. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:dev.to
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!