在线翻译 google项⽬运⾏环境分析manifesto
项⽬的运⾏有很多种情况,⼤致是
1:ng rve 项⽬应⽤会构建好并打包成ES5可执⾏代码,但不会压缩,这在开发环境上可以⽤到,调试时很容易找到问题出在那个代码上,代码具有可读性
2:ng rve --hmr -e=hmr 按照1的⽅法代码会运⾏很慢,⼀但开发的时候某段代码修改了,会直接导致浏览器的整体刷新,为此2的⽅法在1的基础上,只要页⾯哪个模块代码修改了则只刷新那个模块的试图,⼤⼤加快了开发速度ya
3:ng rve --prod 当开发完成后,我们需要看⼀下代码压缩后项⽬的运⾏情况以此来模拟线上的情况,这时候整合后的代码并没有存在本地,⽽直接在内存中,我们修改了代码后,会⾃动刷新页⾯来显⽰修改后的效果
poor是什么意思4:ng build --prod 当模拟线上的效果没有错误后,我们可以构建应⽤将 ES5可执⾏的压缩整合的代码(此代码是经过AOT 和摇树优化的)放在dist⽬录⾥,将dist⽬录可以整体上传到线上服务器,尤其在前后端分离项⽬中有很⼤的作⽤
当开发者键⼊ ng rve --{env}, angular-cli会 提取 env 根据angular-cli.json ⾥⾯的环境变量配置
来找到指定的环境配置⽂件。如下:
bau
如下3种环境配置信息⽂件在项⽬中的位置:
we are complicated
environment.hmr.ts:
export const environment = {
production: fal,
mlahmr: true
};
environment.prod.ts:
export const environment = {
production: true,
hmr: fal
};
environment.ts:
export const environment = {
production: fal,
hmr: fal
};
根据 ng rve --{env} 中的env 选定 environment.{env}.ts 作为项⽬配置⽂件。
当服务器编译整合项⽬的开始,会先执⾏main.ts ⼊⼝⽂件如下:
wear过去式
mian.ts会根据 environment变量的信息来判断 执⾏哪个功能。itemnumber
疑问:
tour de france
上⾯这段是获取环境配置模块,但是按照上⾯内容,⼀般获取的是environment.ts, 但是服务器会根据ng rve --{env} 来获取指定的⽂件,这个内部具体的动作是如何执⾏的呢?