2017-09-18 9 views
0

Google에서 검색하려고했지만 정답이 없으면 수행해야합니다. ember-cli-build.js | environmnet에 따라 브로콜리 매개 변수를 설정하십시오

그것은 내 엠버 - CLI-build.js
/*jshint node:true*/ 
    /* global require, module */ 
    var EmberApp = require('ember-cli/lib/broccoli/ember-app'); 

    module.exports = function(defaults) { 
    var app = new EmberApp(defaults, { 
     storeConfigInMeta: false, 
     minifyJS: { 
     enabled: false 
     }, 
     minifyCSS: { 
     enabled: false 
     } 
    }); 

    return app.toTree(); 
    }; 

간단한 질문이 있어요 그리고 난 minifyJS 또는 minifyCSS 내가 생산 DEV의 엠버를 실행하고 있는지 여부에 따라 값을 변경하려면 - 어떻게 달성 할 수 그?

답변

1

이 답변은 Ember 2.x.x에 적용되며 2.15로 작성되었습니다.

ember-cli-build.js에는 EmberApp.env()을 사용하여 환경을 확보 할 수 있습니다. process.env.EMBER_ENV도 할 수 있지만 첫 번째 옵션은 Ember CLI Docs에 있으므로 개인적으로 살펴 보겠습니다.

예 : EmberCLI의 문서에 따르면

var EmberApp = require('ember-cli/lib/broccoli/ember-app'); 

    module.exports = function(defaults) { 
    var enableMin = (EmberApp.env() === 'production'); 
    var app = new EmberApp(defaults, { 
     storeConfigInMeta: false, 
     minifyJS: { 
     enabled: enableMin 
     }, 
     minifyCSS: { 
     enabled: enableMin 
     } 
    }); 


    return app.toTree(); 
    }; 
1

: Fingerprinting and CDN URLs 또한 app.env 속성을 사용할 수 있어야하고 다음 코드도 잘해야한다 :

module.exports = function (defaults) { 

    const app = new EmberApp(defaults, {}); 

    if (app.env === 'development') { 
     // do something specific for dev 
    } else if (app.env === 'production') { 
     // do something specific for prod 
    } 
}; 

참고 : 구축 할 때 app.env"test"를 보유하고 테스트 목적으로.