我有一个带有UI-router的大型angularjs 1.7.4应用,该应用具有HTML5模式下的多个入口点。
(该项目使用babel 7.6来编译typescript和corejs3 polyfills,所以我没有使用angular-cli)。
我正在尝试将入口点之一迁移到混合应用程序(Angular 8.2.13,@ uirouter / angular-hybrid 9.0.0)。
我也跟着迁移指南@ https://angular.io和引导在https://github.com/ui-router/angular-hybrid和一切似乎除了在角状态定义是工作。它们仅在触发带有Angular组件的angularjs状态后才能工作。
在此之前,尝试使用NG2状态时,控制台中没有任何内容(已为ui-router启用了跟踪)。
我已经被这个问题困扰了好几天了,我没有主意...
ng1hello-带有角分量的ng1状态ng2hello-带有角分量的角状态ng1hi-ng1带有角分量的状态ng2hi-ng2带有角分量的状态
情况1:
情况2:
情况3:
情况4:
编辑:我在这里在Stackblitz中复制了问题:https : //angular-hybrid-issue.stackblitz.io/https://stackblitz.com/edit/angular-hybrid-issue
我显然在使用错误的方法来获取main.ts中的UrlService(角度上下文)
是:
import {getUIRouter} from "@uirouter/angular-hybrid";
const urlService: UrlService = getUIRouter(platformRef.injector).urlService;
应该是:
const urlService: UrlService = platformRef.injector.get(UrlService);
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句