当前位置: 首页 > 知识库问答 >
问题:

在单个ionic Angular项目中的两个ionic应用程序之间导航

淳于哲
2023-03-14

我在一个项目下有两个离子应用程序和一个共享的角度库。假设网站(应用程序1)

我随后将多个Angular应用程序合并为一个应用程序,并将我的ionic应用程序更新为bellow。在app 1中,AppModule声明了共享模块,还导入了App2SharedModule

import { App2SharedModule } from '../../../dashboard/src/app/app.module';
@NgModule({
  declarations: [AppComponent],
  entryComponents: [],
  imports: [BrowserModule,
    IonicModule.forRoot(),
    AppRoutingModule,
    MenuComponentModule,
    HttpClientModule,
    App2SharedModule.forRoot(), // imported App2 Shared Module
    HttpClientXsrfModule.withOptions({
      cookieName: 'XSRF_TOKEN',
      headerName: 'X-XSRF-TOKEN'
    })
  ],
  providers: provider,
  bootstrap: [AppComponent],
  schemas: [CUSTOM_ELEMENTS_SCHEMA],
})
export class AppModule {}
@NgModule({})
export class App1SharedModule{
  static forRoot(): ModuleWithProviders<App1SharedModule> {
    return {
      ngModule: AppModule,
      providers: provider
    };
  }
}

类似于app 2 AppModule

@NgModule({})
export class App2SharedModule{
  static forRoot(): ModuleWithProviders<App2SharedModule> {
    return {
      ngModule: AppModule,
      providers: provider
    };
  }
}

从应用1导航到应用2时(应用路由模块页面)

const routes: Routes = [
  {
    path: 'home',
    loadChildren: () => import('./home/home.module').then( m => m.HomePageModule)
  },
  {
    path: '',
    redirectTo: 'home',
    pathMatch: 'full'
  },
  {
    path: 'account/login',
    loadChildren: () => import('./views/account/login/login.module').then( m => m.LoginPageModule)
  },
  {
    path: 'dashboard', // this should navigate to app2
    loadChildren: '../../../dashboard/src/app/app.module#App2SharedModule'
  },
];

通过将最后一条路线(仪表板)添加到app 1 app routing module页面,它会继续加载app 1的主页,但app 1不会加载,路线也不会工作,等待超过1分钟后,控制台内存不足。

如果我从文件中删除该路由,应用程序1将正常工作。我想从app 1导航到app2,app 2不应该作为组件加载,而是作为一个单独的UI加载,因为它有自己的UI(app组件等等)。

那么,如何在具有共享角库的单个项目下从一个离子应用程序导航到另一个离子应用程序?

共有1个答案

哈襦宗
2023-03-14

根据我的经验,不可能有这样的行为。最佳做法是在另一个端口(例如,ionic serve--端口=8102)将应用程序2作为单独的应用程序运行,然后使用从应用程序1将用户重定向到应用程序2

window.open('http://localhost:8102');
 类似资料:
  • 项目1:Firebase Analytics测试项目2:Firebase Analytics Prod项目 如何在一个项目中添加两个google-services.json文件。有没有其他方法可以使用相同的。

  • 我试图用Firebase构建一个android应用程序,在一个应用程序中需要两个独立的数据库(教师和学生)。我在互联网上到处寻找解决方案,但我得到的只是这个解决方案--一个应用程序中的多个Firebase项目,这似乎是一个很好的解决方案,但我不明白。

  • 我想在IOS和Android上实现电子商务应用程序。我可以把应用程序分为两个部分,不太安全,更安全。我可以说更安全的是在应用程序中接受付款。因此,出于这个目的,我希望有独立的登录系统来进入应用程序和支付。我使用Firebase身份验证和密码身份验证。所以在项目开始时,如果我们想使用Firebase(用于身份验证和数据库),我们需要为Android应用程序添加google-services.json

  • 我有一个使用Xamarin的基于PCL的Xamarin表单解决方案。表格版本2.3.4.270。 在Visual Studio 2017中构建Xamarin android项目时,在自动生成的“...\ obj \ Debug \ Android \ Android manifest . XML " Android项目的文件中添加了一个神秘的活动,当在手机上运行应用程序时,该活动会导致部署两个应用

  • 我正在构建一个应用程序,它有任意数量的“微社区”。目前,一个用户只能属于一个,所以当他们最初注册时,他们输入一个秘密代码,将他们与相关社区联系起来。 将这些“微社区”(由未来在应用程序上玩一个空间的客户拥有)分离成单独的Firebase项目或将所有数据保存在一起是明智的吗?

  • 我有两个android应用程序。我只使用一个firebase项目为他们两个,与两个应用程序都包括在其中。因此,我只有一个google-services.json,它为我的两个应用程序指定了键。我正在尝试使用firebase cloud消息传递,遇到以下问题: 什么能引起这些问题?我需要为第二个应用程序创建全新的firebase项目吗?还是我漏掉了什么? 如果你需要看一些代码,让我知道。在这一点上,