代码之家  ›  专栏  ›  技术社区  ›  raj

为什么ionicmodule不是每个延迟加载的页面模块的一部分

  •  1
  • raj  · 技术社区  · 6 年前

    每个延迟加载的页面都是独立的模块。基本的延迟加载页面模块如下所示。

    @NgModule({
      declarations: [
        TestPage,
      ],
      imports: [
        IonicPageModule.forChild(TestPage),
      ],
    })
    export class TestPageModule {}
    

    这个 TestPage 已声明。进口已经 IonicPageModule.forChild() 它实际上返回一个 ngModule 进口的 IonicModule . 从源头上说,

    @NgModule({
      imports: [IonicModule],
      exports: [IonicModule]
    })
    export class IonicPageModule {
    
      static forChild(page: any): ModuleWithProviders {
        return {
          ngModule: IonicPageModule,
          providers: [
            { provide: <any>LAZY_LOADED_TOKEN, useValue: page },
            { provide: ANALYZE_FOR_ENTRY_COMPONENTS, useValue: page, multi: true },
          ]
        };
      }
    
    }
    

    但我看不到每个包的IonicModel部分。为什么离子组件和指令是离子模块的一部分,而不是每个延迟加载的模块束的一部分?我们可以用自己的组件来避免代码重复吗?

    0 回复  |  直到 6 年前