angular 4 开发环境下打包文件过大

时间:2021-12-04 06:38:38

angular 4本地开发环境下,ng server -- port 8080 -o 之后在在浏览器中查看数据请求,其中vendor.bundle.js有8.3mb,而整个传输数据大小为16.3mb

经过一番百度,发现输入 ng server --port 8080 -o --prod  打出来的包数据很小,但是我输入之后发现报错了,如下

Property 'columnDefs' is protected and only accessible within class 'DicComponent' and its subclasses.

经过又一番谷歌之后发现,生产环境下的构建会用到提前编译,为了正确的构建所有模板文件中使用的方法和属性必须是公共的(不能是受保护和私有的),但是我们可以不使用aot,在命令窗口运行  ng server -o --port 8081 --prod --aot=false

终于打出来的东西变少了,所有的数据传输才1.8mb

但是命令窗口会有提示:

****************************************************************************************
This is a simple server for use in testing or debugging Angular applications locally.
It hasn't been reviewed for security issues.

DON'T USE IT FOR PRODUCTION USE!
****************************************************************************************

意思就是说,你起的这个只是个用于本地调试和测试angular应用的简易的web server,它尚未经过安全问题审查。这是只是开发环境下的打包,生成环境下还需要ng build命令打包。

除了安全问题,我想也没有人会在生产服务上装一套angular 开发环境吧...