Heim  >  Artikel  >  Web-Frontend  >  Wie übergebe ich umgebungsabhängige Variablen in Ihrer Angular-Anwendung mithilfe von Webpack?

Wie übergebe ich umgebungsabhängige Variablen in Ihrer Angular-Anwendung mithilfe von Webpack?

DDD
DDDOriginal
2024-11-10 21:04:02646Durchsuche

How to Pass Environment-Dependent Variables in Your Angular Application Using Webpack?

Übergabe umgebungsabhängiger Variablen im Webpack

Problem:

Beim Konvertieren einer Angular-Anwendung von Gulp in Webpack müssen Sie einen Weg zum Ersetzen finden umgebungsabhängige Variablen (z. B. der Datenbankname) im HTML Seite.

Lösung:

Es gibt mehrere Methoden, dies mit Webpack zu erreichen:

DefinePlugin

new webpack.DefinePlugin({
    'process.env.NODE_ENV': JSON.stringify(process.env.NODE_ENV || 'development')
})

DefinePlugin ersetzt exakte Übereinstimmungen „wie sie sind, " daher die JSON-Formatierung string.

EnvironmentPlugin

new webpack.EnvironmentPlugin(['NODE_ENV'])

EnvironmentPlugin verwendet DefinePlugin intern, um Umgebungswerte über die Terser-Syntax zuzuordnen.

Alias

Erstellen Sie ein Alias-Modul zum Konsumieren Konfiguration:

// Consumer module
var config = require('config');
// Configuration module
resolve: {
    alias: {
        config: path.join(__dirname, 'config', process.env.NODE_ENV)
    }
}

Wenn beispielsweise process.env.NODE_ENV „Entwicklung“ ist, befindet sich das Alias-Modul unter ./config/development.js:

// Configuration module for 'development' environment
module.exports = {
    testing: 'something',
    ...
};

Das obige ist der detaillierte Inhalt vonWie übergebe ich umgebungsabhängige Variablen in Ihrer Angular-Anwendung mithilfe von Webpack?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn