-1

이 방법을 잘못 사용하고 있는지 잘 모르겠지만 모델 & 컬렉션 패키지가 있습니다. (mongodb 결과가 모델로 표시됨), 노력하고 있습니다. 그러나 모듈에서 접근하기 위해서는 모델에 하드 코딩되지 않아야한다고 생각하는 host, port, password 등의 설정이 있습니다.모듈간에 응용 프로그램 설정 공유

내 응용 프로그램에는 특정 설정을 가져올 수있는 app.config 개체가 있으며 모델 모듈에서이를 사용할 수 있기를 원하지만 모듈을 필요로하지 않으려 고합니다. 매번 스크립트에 require('models/user')(app.config) 코드를 반복하기 때문에 사용자 모델이 필요합니다. 여기

내가 생각 한 몇 가지 솔루션입니다 :

  • 등록

    • app.models라는 객체를 생성하고 모든 모델을 지정하고 시작 모듈
    • 에 그들에게 설정을 통과
    • 단점 : 파일의 모델 모듈 require
    을 선호합니다.
  • 글로벌 구성은

    • 는 모든 모듈에 액세스 할 수있는 app.config에 연결된 전역 변수를 만듭니다.

    • 단점 :. 같은 프로세스 :(에서 여러 응용 프로그램을 만들 수 없습니다

+0

보통 저는 글로벌 설정으로 이동 하겠지만, '동일한 프로세스에서 여러 개의 앱을 만들 수 없음'을 언급합니다. 그게 무슨 뜻인지 모르겠다. 동적 설정을 원하고 앱을 동적으로 만들고 싶니? – Khang

답변

1

당신은 자신의 파일에 설정을 넣을 수 있고, 가져 오기/각 모델에서이 필요

예를 들어

, models/user에서 ...

const config = require('config') 

... 어디서나 당신이을 설정하는...

app.config = require('config') 
+0

고맙지 만, 내 config 객체는 app 시작시 설정할 필요가있는 부분 함수입니다 (예 :'app.config = require ('./config') (basedir)') – Albert

+0

어떻게 해결할 수 있습니까? ? – Albert

+1

당신은'const config = require ('./ config')와 같은 것을 할 수 있습니다; config.basedir = basedir'입니다. 구성을 설정 한 후 모듈의 최상위 레벨에서 config를 사용해야하는 것이 있는지 확인해야합니다. – CaseyWebb