Angular 5应用程序在第一次在任何服务器上加载应用程序时会花费更多时间,有关更多信息,我使用AOT编译器进行生产。
tsconfig.json
{
"compileOnSave": false,
"compilerOptions": {
"outDir": "./dist/out-tsc",
"baseUrl": "src",
"sourceMap": true,
"declaration": false,
"moduleResolution": "node",
"emitDecoratorMetadata": true,
"experimentalDecorators": true,
"target": "es5",
"typeRoots": ["node_modules/@types"],
"lib": ["es2017", "dom"]
}
}
答案 0 :(得分:2)
有几种方法可以优化首次加载。
1:构建选项
ng build --aot --prod
2:延迟加载
您应该重构您的应用程序以使用lazyLoading。在Angular中,lazyload是在需要时加载模块的方法。因此,在第一次加载时将加载较少的代码,然后在用户移至其他路由时加载所需的块文件。 find the official doc for lazyLoading
3:导入所需的内容
仅导入所需的功能,例如lodash
代替
从“ lodash”中导入*作为_;
使用
从“ lodash”导入{toLower};
4:CDN
利用CDN(cloudfront / s3)加载资产。
5:动态脚本加载
不要在index.html文件中加载所有脚本。而是动态加载 必要时单独组成