npm.io
0.1.3 • Published 8 years ago

environment-switch-loader

Licence
MIT
Version
0.1.3
Deps
1
Vulns
0
Weekly
0

Environment Switch Loader

Replace the file to be exported.

Install

npm install --save-dev environment-switch-loader

Usage

{
    test: /\.js$/,
    use: [
        {
            loader: 'environment-switch-loader',
            options: {
                env: process.env.NODE_ENV,
                environmentSource: './src/environments/environment.js',
                environments: {
                    'prodction': './src/environments/environment.prod.js'
                }
            }
        }
    ]
}

{
    test: /\.js$/,
    use: [
        {
            loader: 'environment-switch-loader',
            options: {
                env: process.env.NODE_ENV,
                environmentSource: './src/environments/environment.js',
                environments: function(env, environmentSource, resourcePath) {
                    return `./src/environments/environment.${env}.js`;
                }
            }
        }
    ]
}

var environment = require('environments/environment');
Be careful when using ts-loader.

In order to prevent ts-loader from rebuilding dependencies, the transpileOnly flag needs to be set to true.

This invalidates type checking by ts-loader.

But you guys are supplemented by editor, right?

{
    test: /\.ts$/,
    use: [
        {
            loader: "ts-loader",
            options: {
                transpileOnly: true
            }
        },
        {
            loader: 'environment-switch-loader',
            options: {
                env: process.env.NODE_ENV,
                environmentSource: './src/environments/environment.ts',
                environments: {
                    'prodction': './src/environments/environment.prod.ts'
                }
            }
        }
    ]
}

{
    test: /\.ts$/,
    use: [
        {
            loader: "ts-loader",
            options: {
                transpileOnly: true
            }
        },
        {
            loader: 'environment-switch-loader',
            options: {
                env: process.env.NODE_ENV,
                environmentSource: './src/environments/environment.ts',
                environments: function(env, environmentSource, resourcePath) {
                    return `./src/environments/environment.${env}.ts`;
                }
            }
        }
    ]
}

import { environment } from 'environments/environment';

Keywords