在整个项目中以npm软件包形式共享角度环境

时间:2018-09-21 23:15:19

标签: angular typescript firebase security npm

我正在处理一个项目,该项目需要创建两个单独的角度项目,但我希望它们共享同一环境对象,其中包含我的Firebase配置。创建一个名为环境的自定义npm软件包并在其中保存我的环境对象是一个好主意。这就是我的自定义程序包的index.ts的样子。

//environments/index.ts    
//production environment
    export const environment_prod = {
      production: true,
      firebase: {
        apiKey: "xxxxxxxxxxxxxxxxxxxxxxxxxxxx",
        authDomain: "xxxxxxxxxxxxxxxxxxxxxxxxxxxx",
        databaseURL: "xxxxxxxxxxxxxxxxxxxxxxxxxxxx",
        projectId: "xxxxxxxxxxxxxxxxxxxxxxxxxxxx",
        storageBucket: "xxxxxxxxxxxxxxxxxxxxxxxxxxxx",
        messagingSenderId: "xxxxxxxxxxxxxxxxxxxxxxxxxxxx"
      }
    };


    //development environment
    export const environment_dev = {
      production: false,
      firebase: {
        apiKey: "xxxxxxxxxxxxxxxxxxxxxxxxxxxx",
        authDomain: "xxxxxxxxxxxxxxxxxxxxxxxxxxxx",
        databaseURL: "xxxxxxxxxxxxxxxxxxxxxxxxxxxx",
        projectId: "xxxxxxxxxxxxxxxxxxxxxxxxxxxx",
        storageBucket: "xxxxxxxxxxxxxxxxxxxxxxxxxxxx",
        messagingSenderId: "xxxxxxxxxxxxxxxxxxxxxxxxxxxx"
      }
    };

在每个项目的环境中,我是否从共享的npm包中导入配置?这就是我的生产环境现在的样子

import { environment_prod } from 'environments';

export const environment = environment_prod;

在我的开发环境中,我有这个:

//loading  environment_dev from my custom npm package
import { environment_dev } from 'environments';

export const environment = environment_dev;

我想知道这是否有安全隐患,是否应该改变我的方法。我还将我的自定义npm软件包文件夹添加到我的.gitignore文件中,以便不将其推送到我的git repo中。感谢您抽出宝贵的时间阅读我冗长而无聊的文章

0 个答案:

没有答案