背景
lowcode平台,前端部分采用Angular技术栈,lowcode平台需要做实时预览,原来采用的方案是在服务器中docker容器中启动ng serve启动热更新,但是存在以下问题:
1. ng serve的热更新不稳定,因为lowcoder编译生成代码有先后顺序(例如编译生成A,A中有依赖B的 东 西,此时B还没有生成,ng serve 编译会报错了,报错后就不再编译了)<br /> 2. docker中启动一个ng serve内存占用大致1G,如果多个应用的话服务器压力很大无法处理
鉴于以上原因希望我们的Angular工程可以实现在浏览器端编译,对浏览器直接可读
实现思路
- 使用system.js 维护整个Angular工程所需的依赖,全部采用UMD格式的js文件格式维护,在systemjs.config.js中配置ts编译部分,仅仅对src目录下生成的业务代码进行在线编译
- 具体实现见代码
