【发布时间】:2019-04-11 06:09:34
【问题描述】:
我有一个 Angular 7 应用程序,我想将单页 GWT 应用程序用作组件。使用该 GWT 应用程序作为组件的原因是,我不希望我的 GWT 应用程序在使用 Angular 路由导航到该应用程序(或页面)时一次又一次地重新加载。
这是我尝试过的:
首先,我将该 GWT 项目的已编译二进制文件放在我的 Angular 应用程序的 assets 文件夹中。然后我将所有内容放在我的 Angular 应用程序的 component.html 文件中的 index.html 标记下。然后添加一个按钮并在其单击事件上应用路由器导航,以便单击该按钮将导航到我的 Angular 应用程序的组件页面。
我将 GWT 应用程序嵌入到 Angular 组件的 iFrame 中。但我观察到,在通过路由导航到该页面时,每当我使用路由来回导航到该页面和另一个 Angular 页面时,它都会一次又一次地重新加载。
我还在angular.json文件的scripts参数中添加了GWT应用所有需要的javascript文件的路径,并将allowJs参数修改为true在 tsconfig.json 中。
我知道在构建 Angular 项目时会创建 main.js 文件,该文件包含所有组件的已编译 JS 代码,包括它们的路由。所以,我也想过把GWT的主要nocache.js文件转成TS文件,但是导致语法错误很多,所以忽略了这个过程。
现在,以我有限的知识,除了上面指定的解决方案之外,我想不出任何解决方案,我真的陷入了这种情况,无法继续我的项目。
那么,谁能帮我找到它的解决方案?我也不确定是否可以这样做。
【问题讨论】:
标签: angular gwt angular7 angular-routing smartgwt