angular6 环境变量

参考

  1. Angular 8 environments 配置

问题描述

由于Vue有根据环境变量.env文件配置,来区分production和develop,根据这个环境变量,就可以判断是否需要使用mock数据或者后台服务地址,这是一个非常有用的功能
那么,angular 是否有这个功能呢?答案是肯定的,下面做相关介绍

angular.json 配置

  1. 打开 angular.json -> projects -> 项目名 -> architect -> build -> configurations -> production
    找到这个节点,然后复制,key改为 dev

在这里插入图片描述

在这里插入图片描述

  1. angular.json -> projects -> 项目名 -> architect -> serve -> configurations

在这里插入图片描述

添加不同环境变量配置文件

  1. 添加src/environments/environment.dev.ts
export const environment = {
  production: false,
  name: 'huanghailiang',
  isMock: true,
  envType: 'dev'
};			

新增的文件名dev 需要与上面的保持一致

  1. 添加src/environments/environment.prod.ts
export const environment = {
  production: true,
  envType: 'pro',
  isMock: false
};
  1. 添加src/environments/environment.ts
export const environment = {
  production: false,
  isMock: false
};

在typescript中,该文件是作为 import { environment } from 'src/environments/environment'; environment 的类型(class或者interface)

package.json中修改启动命令

在这里插入图片描述

开发环境

ng serve -c production
等价于
ng s -c=production

结果: 打印 environment.prod.ts 文件的配置内容

ng serve -c dev
等价于
ng s -c=dev

结果: 打印 environment.dev.ts 文件的配置内容

发布环境

ng build -c production
等价于
ng b -c=production

结果: 打印 environment.prod.ts 文件的配置内容

ng build -c dev
等价于
ng b -c=dev

结果: 打印 environment.dev.ts 文件的配置内容

在ts文件中使用

这里验证 app.component.ts文件

import { environment } from 'src/environments/environment';
//使用变量
console.log(environment)

不能debugger调试了

由于angular.json文件中dev这个节点是完全复制的,配置信息就是production的打包方式,为了保持develope的特性,因此,只需要复制fileReplacements一个属性值
在这里插入图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值