Làm cách nào để đặt một biến môi trường trong node.js?
Tôi không muốn dựa vào bất kỳ nền tảng cụ thể nào, chẳng hạn như chạy export hoặc tập hợp cmd.exe.
Câu trả lời:
Bạn có thể đặt các biến môi trường của mình trong process.env:
process.env['VARIABLE'] = 'value';
-HOẶC LÀ-
process.env.VARIABLE = 'value';
Node nên quan tâm đến các chi tiết cụ thể của nền tảng.
var process = require('process'), process là một biến toàn cục hiện tại.
process.env.VARIABLEkhông sao nếu tên biến là một hằng số đã biết, trong khi process.env['VARIABLE']hoạt động trong mọi trường hợp; câu hỏi ban đầu không nêu đủ chi tiết, vì vậy ví dụ linh hoạt hơn có vẻ phù hợp hơn.
Trước tiên, bạn nên cài đặt gói này: -
https://github.com/motdotla/dotenv [ npm install dotenv]
Sau đó, bạn cần tạo tệp .env trong thư mục gốc của dự án và ở đó bạn có thể thêm các biến như dưới đây: -
NODE_ENV=PRODUCTION
DATABASE_HOST=localhost
Bây giờ bạn có thể dễ dàng truy cập các biến này trong mã của mình như sau: -
require('dotenv').config()
console.log(process.env.NODE_ENV);
Nó làm việc cho tôi, hy vọng rằng sẽ giúp.
nút v14.2.0 Để đặt biến env, trước tiên hãy tạo một tên tệp config.env trong thư mục chính của dự án của bạn và sau đó viết tất cả các biến bạn cần, ví dụ:
config.env
NODE_ENV=development
PORT=3000
DATABASE=mongodb+srv://lord:<PASSWORD>@cluster0-eeev8.mongodb.net/tour-guide?retryWrites=true&w=majority
DATABASE_LOCAL=mongodb://localhost:27017/tours-test
DATABASE_PASSWORD=UDJUKXJSSJPWMxw
bây giờ hãy cài đặt dotenv từ npm, dotenv sẽ giảm tải công việc của bạn
npm i dotenv
bây giờ trong tập lệnh khởi động máy chủ của bạn, trong trường hợp của tôi là server.js sử dụng doenv để tải các biến env.
const dotenv = require('dotenv');
dotenv.config({ path: './config.env' });
const app = require('./app'); // must be after loading env vars using dotenv
//starting server
const port = process.env.PORT || 3000;
app.listen(port, () => {
console.log(`app running on port ${port}...`);
});
Tôi đang sử dụng express, tất cả mã express của tôi trong app.js, viết ở đây để bạn tham khảo
const express = require('express');
const tourRouter = require('./route/tourRouter');
const userRouter = require('./route/userRouter');
if (process.env.NODE_ENV === 'development') {
console.log('mode development');
}
app.use(express.json());
app.use('/api/v1/tours', tourRouter);
app.use('/api/v1/users', userRouter);
module.exports = app;
bây giờ khởi động máy chủ của bạn bằng giao diện điều khiển, tôi đang sử dụng gật đầu , bạn có thể cài đặt nó từ npm;
nodemon server.js