2016-06-28 10 views
3

어떤 환경 노드가 staging 또는 production에서 실행되는지에 따라 다른 값으로 설정해야하는 일부 중요한 데이터가 있습니다. process.env.NODE_ENV과 같은 것으로 액세스하는 것이 반응 구성 요소 자체 내에서만 작동하지 않습니다 따라서 서버 측 파일에서, 어떻게 든 이것을 내 반응 구성 요소로 전달할 방법이 필요합니다.반응 구성 요소에서 환경 변수에 액세스하는 중

단순히 꼬리말 구성 요소 안에 "Staging"또는 "Production"문자열이 있는지 보여 주기만하면됩니다.

+0

나는 당신이해야한다고 생각은'응용 프로그램의 모든 구성 요소에서 __DEV__' 변수 접근. – martinarroyo

답변

5

DefinePlugin 사용을 고려 :

무료 변수를 정의합니다. debug 로깅을하거나 글로벌 상수를 추가하여 개발 빌드에 유용합니다.

예 :

new webpack.DefinePlugin({ 
    VERSION: JSON.stringify("5fa3b9"), 
    BROWSER_SUPPORTS_HTML5: true, 
    TWO: "1+1", 
    "typeof window": JSON.stringify("object") 
}) 
+0

플러그인을 사용한 후 구성 요소의 변수에 어떻게 액세스합니까? 나는 console.log (Version)를 시도했지만 Warning은 그것이 정의되지 않았다고 말했다. – jasan

+0

.eslintrc에 "globals": { "ENV": false}를 설정해야했습니다. :) – jasan

관련 문제