2016-07-15 3 views
8

현재 내가 파일을 불렀다 router.js 다음과 같이.config 파일을 읽기

var Server = require('mongodb').Server; 
var MongoDB = require('mongodb').Db; 
var dbPort = 31979; 
var dbHost = '40.117.155.19'; 
var dbName = 'node-login'; 

내가 좋아하는 것은 다음과 같이 설정해야하는 방법 :

var Server = require('mongodb').Server; 
var MongoDB = require('mongodb').Db; 
var dbPort  = readConfig(dbPort); 
var dbHost  = readConfig(dbHost); 
var dbName  = readConfig(dbName); 

을 어떻게 것 이 일을 성취하십시오. test.config와 같은 파일을 갖고 싶습니다. router.js의 .config 파일에서 dbPort, dbHost 및 dbName을 읽을 수 있습니다.

+0

수동으로 fs 모듈로 읽고 구문 분석 할 수 있습니다. 그러나 JavaScript와 JSON이 함께합니다. .config를 사용하면 Js에서 고전적인 상속을 사용하는 것과 같을 수 있지만 가능한 최선의 방법은 아닙니다. – ste2425

답변

12

당신은 JSON 파일로 설정을 저장할 수 있고 직접 읽어

config.json

{ 
    "dbPort": 31979, 
    "dbHost": "40.117.155.19", 
    "dbName": "node-login" 
} 

router.js을

var Server = require('mongodb').Server; 
var MongoDB = require('mongodb').Db; 
var CONFIG = require('./config.json'); 

var dbPort = CONFIG.dbPort; 
var dbHost = CONFIG.dbHost; 
var dbName = CONFIG.dbName; 
+0

그래도 JSON은 유효하지 않습니다. – robertklep

+0

@robertklep 고마워요, 고쳐주세요. – Timo

+0

도움 주셔서 대단히 감사합니다! –

3

여기 하나의 방법에의 해라.

//File config.js 
module.exports = { 
    dbPort : 8080, 
    dbHost : etc, 
    dbName : nom, 
} 

//File server.js 
var Server = require('mongodb').Server; 
var MongoDB = require('mongodb').Db; 
var config = require('configFile'); 

var dbPort  = config.dbPort; 
var dbHost  = config.dbHost; 
var dbName  = config.dbName; 
+0

Ninja 분 전에 고정 :) Thanks. –

+0

기술적으로 파일 이름을 '.config'로 지정하고 JSON 형식이 올바로 지정되어 있으면 읽을 수 있습니다. 특정 Android 구성 파일 유형을 의미하는 경우가 아니면 –

+0

감사합니다. 내 질문에 대한 답변입니다. 그리고 아니, 나는 특정 안드로이드 설정 파일 유형을 의미하지는 않습니다, 도움을 주셔서 감사합니다. 나는 당신에게 +1을 주겠지 만, 불행히도 이것이 stackoverflow에서 물어 보지 못한 첫 번째 질문이라고 생각합니다. –

관련 문제