2012-01-09 3 views
1

getter와 setter가 nodej에서 멤버 데이터를 가져오고 설정하는 두 개의 함수를 제공하는 'test'라고하는 모듈을 구현하는 방법은 무엇입니까?Nodejs 모듈 구현

비결은 데이터 모듈에서 세터를 통해 설정됩니다 '는이'시험 '을 통해'테스트 '우리가 REQ와 고해상도 객체를 등록하면

시나리오 인의 게터를 통해'B '를 모듈에 액세스 할 수 있어야합니다 말한다 HTTP 요청을 '테스트'색인에서, 그것은 단지 응용 프로그램을 통해 다른 모든 모듈에 액세스 할 수 있어야합니다 require ('test')를 선언하여

nodejs 가능한이 있습니까?

+0

내가 잘못 아니에요 경우를 구현하는 또 다른 방법을 찾을 수; module.exports = new test()를 선언하고 'test'모듈을 javascript 클래스로 구현합니다. 이 작업은 노드가 첫 번째 요구 이후에 항상 모든 추가 require ('test')에 캐시 된 객체를 반환하기 때문에 가능합니다. 그래서 우리는 캐시 된 객체 위에 getter와 setter를 사용할 수 있습니다. – Tamil

답변

2

reqres은 각 페이지 요청에서 액세스 할 수 있으므로 글로벌 변수를 설정하더라도 전역 변수를 설정하면 경쟁 조건이 발생하므로 전역 변수를 설정하더라도이를 달성 할 수 없습니다.

이를 달성하는 유일한 방법은 req와 res를 매개 변수로 해당 모듈에 전달하는 것입니다.

예 :

는 app.js

var http = require('http'); 
http.createServer(function (req, res) { 
    require('./sample')(req, res); 
}).listen(1337, "127.0.0.1"); 

sample.js

module.exports = function (req, res) { 
    // do stuff with req and res here 
} 
+0

고맙습니다. – Tamil