Bối cảnh: một xương sống ứng dụng duy nhất-page xây dựng với yeomanXử lý cấu hình môi trường cụ thể trong một ứng dụng javascript
Tôi muốn một cách để có một số thông số ứng dụng phụ thuộc vào môi trường hiện tại của tôi (dev vs sản xuất).
Ngay bây giờ tôi đang sử dụng hai tập tin cấu hình riêng biệt, và tôi chuyển đổi các dev một đến sản một khi triển khai mà grunt: nhiệm vụ usemin:
// index.html
<!-- build:js scripts/config.prod.js -->
<script src="scripts/config.dev.js"></script>
<!-- endbuild -->
// config.dev.js
window.config = {
api_host: 'localhost:9393',
api_key: 'dev_api_key'
}
// config.prod.js
window.config = {
api_host = 'api.host.tld',
api_key = 'prod_api_key'
}
giải pháp này hoạt động nhưng là mùi và không cho phép bất kỳ môi trường nào khác ngoài sản xuất và phát triển. Lựa chọn thay thế của tôi là gì?
Bạn có thể thử xử lý trước tệp HTML của mình và thay thế trình giữ chỗ – gustavohenke
có thể trùng lặp của [Biến môi trường NodeJS trong Grunt] (http://stackoverflow.com/questions/15554215/nodejs-environment-variables-in-grunt) –
Dưới đây là một câu trả lời chi tiết cho Yeoman: https://stackoverflow.com/questions/20742882/how-set-get-environment-specific-variable-in-a-yeoman-ember-app/20974746#20974746 – borisrorsvort