首页 文章

延迟加载模块,不属于路由

提问于
浏览
0

如何加载那些在另一个组件/模块中使用的延迟加载的模块/组件?

假设有3个以下的模块,其中login和home正在加载延迟加载 .

  • AppModule(主)

  • LoginModule

  • HomeModule

现在,我已经创建了另一个模块lib模块,它包含很少的自定义组件,如网格,按钮等 . 这些组件将被家庭或其他模块的组件使用,永远不会直接从任何路由使用 .

这里,如果将lib模块导入到主页和其他模块中,则会在每个块文件中复制它 .

有没有办法延迟加载lib模块以及没有重复代码的路由?

我还试图将lib导入到app模块中,但它不能处理家庭模块的延迟加载,并且会出现错误,如果'grid'是Angular组件,则验证它是否是此模块的一部分 .

2 回答

  • 0
  • 2

    由于这个模块不是任何路由的一部分,因此在我看来是一种共享模块 . 并且您的共享模块应该只在整个应用程序中导入一次 .

    您应该将核心模块导入主模块,其中装饰器为@optional和@SkiptoSelf,这将确保在整个应用程序中仅加载模块一次 .

相关问题