angular - Angular2 - 块失败错误
问题描述
我正在使用带有 webpack 版本的 angular2:3.11.0。角cli:2.3.1
我像往常一样使用ng build命令创建了一个构建。但是在服务器中部署后,在路由到一些菜单项时,出现如下错误:
vendor.6e96d626475ec727c65d.bundle.js:1235 EXCEPTION: Uncaught (in promise): Error: Loading chunk 1 failed.
Error: Loading chunk 1 failed.
谁能告诉问题是什么?
解决方案
该错误是由于路由器模块引发的异常所致。作为对此的解决方案,我们可以捕获此异常,如下所示:
import {Router, NavigationEnd} from '@angular/router';
constructor(private router: Router) {}
clickMenu(state, child = '') {
this.router.navigate([state + '/' + child]).then(()=>{
this.displayLoader--;
}).catch(err => {
console.log("Router navigate err");
console.log(err);
location.reload();
});
}
问题取决于服务器。即相同的构建在测试服务器中引发错误,但在本地和生产服务器中没有。