2017-06-21 1 views
1

Ich habe eine umgebungsspezifische config.js-Datei, die wie folgt aussieht:Wie lade/schreibe ich umweltspezifische Details aus der Konfigurationsdatei in die webpack generierte Datei "buddle js"?

module.exports = { 
    local: { 
     apiHost: 'http://localhost', 
     apiPort: '3003', 
    }, 
    development: { 
     apiHost: 'http://192.168.1.49', 
     apiPort: '3003', 
    }, 
    testing: { 
     apiHost: 'http://192.168.1.50', 
     apiPort: '3003', 
    } 
} 

diese diese Datei Ich schreibe verwenden: -

const config = require('./config.js')[env]; 

, dass alles von config.js in meinem webpack lädt (v-1) generierte bundle.js-Datei. Ich möchte nur umgebungsspezifische Details in die Datei bundle.js geschrieben haben und nicht alle Umgebungsdetails in der Datei bundle.js offenlegen.

Wie kann ich das tun?

+0

Ich will nicht mutiple Umwelt-Dateien erstellen. –

Antwort

-1

Nutzen Sie Webpack des DefinePlugin: https://webpack.js.org/plugins/define-plugin/

In Ihrem webpack.config.js

const webpack = require('webpack'); 
const envConfig = require('/path/to/config.js'); 

plugins: [ 
    new webpack.DefinePlugin({ 
    ENV_CONFIG: envConfig[your_env] 
    }); 
] 

in Ihrer Anwendung

if(ENV_CONFIG) { 
    console.log('Your environment details:', ENV_CONFIG); 
} 
+0

Ich brauche einen Webpack-Loader oder etwas, das mir hilft, nur umgebungsspezifische Konfigurationsdateien zu laden. Die obige Antwort wird mir nicht helfen. –

+0

Nicht ganz sicher, was Sie erreichen wollen. Um die umgebungsspezifischen ** Eigenschaften ** ('apiHost' und' apiPort') zu laden oder eine Menge von umgebungsspezifischen Config ** Dateien ** zu laden? –

Verwandte Themen