我正在使用WebApi2开发后端的angular 5应用程序。到目前为止,我只有一个模块应用程序。但是现在我们决定通过将应用程序分成多个模块并使用延迟加载来优化我们的应用程序。
我正在尝试将应用程序的“报告”部分移至单独的模块中,并且希望在不加载所有其他模块的情况下在新的浏览器选项卡中打开报告,以缩短报告的加载时间。
我尝试使用延迟加载来实现此功能,它正在新标签中打开我的报告,但仍在重新加载所有其他模块。
这是我在标题菜单模板中使用的链接:
<li [routerLinkActive]="['active']"><a [routerLink]="['reportdashboard']" target="_blank" [queryParams]="{ rt: 'business'}"> Business Reports</a></li>
这是延迟加载的路由,正在延迟加载我的ReportsModule
:
{ path: 'reportdashboard', loadChildren: './modules/reports/report.module#ReportsModule' },
下面是我的app.module文件代码,其中显示了不同的模块:
import {SharedModule} from './modules/shared/shared.module';
我已在app.module.ts中@NgModule的imports属性中添加了此SharedModule。 而且我懒于加载ReportsModule,它不是必需的,并且可以在应用程序模块中导入。我已经在说明中添加了它的路线。