【发布时间】:2017-02-22 23:37:37
【问题描述】:
有没有办法根据 angular-cli@1.0.0-beta.16 中的环境变量有条件地更改导入?我正在尝试以一种不需要更改在客户端代码中导入服务的方式进行代码更改的方式来执行此操作,但是当需要时,我可以指定一个构建标志来交换模拟服务。
我尝试使用this post 中的一种模式:
文件结构:
MyService MyServiceMock.ts MyServiceReal.ts index.ts在你的 index.ts 中,你可以有以下内容:
import { environment} from '../environments/environment'; export const MyService = environment.mock ? require('./MyServiceMock').MyServiceMock: require('./MyServiceReal').MyServiceReal;然后在您的客户端代码中,导入 MyService:
import MyService from './myservice/index';
页面加载,我可以看到在单步执行代码时注入了依赖项,但是在 Cannot find name 'MyService' 的行中存在编译错误(我认为是 TypeScript 错误)。
【问题讨论】:
标签: angular typescript webpack angular-cli