Przechowuję obiekt (który ma kilka metod) process.env
jak poniżej:
var obj = createObject(); // returns new object
process.env.OBJ = obj;
Kiedy uzyskuję dostęp do tego obiektu z innych miejsc, takich jak poniżej, nie widzę żadnej z metod.
var obj = process.env.OBJ;
Seans [Object Object]
.
Dlaczego?
Odpowiedzi:
4 dla odpowiedzi № 1process.env to przechowywanie zmiennych środowiskowych, a nie przechowywanie obiektów. Możesz przechowywać swoje zmienne w następujący sposób:
process.env["CONSUMER_KEY"] = ""
process.env["CONSUMER_SECRET"] = ""
process.env["ACCESS_TOKEN_KEY"] = ""
process.env["ACCESS_TOKEN_SECRET"] = ""
Oto link do tego https://nodejs.org/api/process.html#process_process_env
Jeśli chcesz przechowywać swoje metody, powinieneś utworzyć obiekt globalny i przypisać do niego swoje metody.
2 dla odpowiedzi nr 2
Krótka odpowiedź brzmi: NIE
Nie, nie możesz przechowywać obiektów process.env
ponieważ przechowuje zmienne środowiskowe takie jak PATH, SHELL, TMPDIR
i inne, które są reprezentowane przez wartości String. Jeśli uruchomisz polecenie console.log(process.env);
możesz zobaczyć wszystkie zmienne env w swoim systemie, w szczególności możesz ustawić własne zmienne env (np. process.env.home = "home"
), które będą dostępne podczas procesu uruchamiania aplikacji nodejs.