未找到[对象模块]的ngmodule元数据

问题描述 投票:0回答:1

我通过将路由从从字符串引用的延迟加载更改为从对import的调用的延迟加载更改路由来重做我的路由。

我的问题是,每次导航到其中一个页面时,我都会收到以下错误消息:'[object Module]'找不到NgModule元数据。

consolelogs.js:49 ERROR Error: Uncaught (in promise): Error: No NgModule metadata found for '[object Module]'.
Error: No NgModule metadata found for '[object Module]'.
    at NgModuleResolver.resolve (compiler.js:20665)
    at CompileMetadataResolver.getNgModuleMetadata (compiler.js:19794)
    at JitCompiler._loadModules (compiler.js:25582)
    at JitCompiler._compileModuleAndComponents (compiler.js:25565)
    at JitCompiler.compileModuleAsync (compiler.js:25527)
    at CompilerImpl.compileModuleAsync (platform-browser-dynamic.js:216)
    at MergeMapSubscriber.wrapIntoObservable.pipe.Object [as project] (router.js:5369)
    at MergeMapSubscriber._tryNext (mergeMap.js:46)
    at MergeMapSubscriber._next (mergeMap.js:36)
    at MergeMapSubscriber.next (Subscriber.js:49)
    at NgModuleResolver.resolve (compiler.js:20665)
    at CompileMetadataResolver.getNgModuleMetadata (compiler.js:19794)
    at JitCompiler._loadModules (compiler.js:25582)
    at JitCompiler._compileModuleAndComponents (compiler.js:25565)
    at JitCompiler.compileModuleAsync (compiler.js:25527)
    at CompilerImpl.compileModuleAsync (platform-browser-dynamic.js:216)
    at MergeMapSubscriber.wrapIntoObservable.pipe.Object [as project] (router.js:5369)
    at MergeMapSubscriber._tryNext (mergeMap.js:46)
    at MergeMapSubscriber._next (mergeMap.js:36)
    at MergeMapSubscriber.next (Subscriber.js:49)
    at resolvePromise (zone-evergreen.js:797)
    at resolvePromise (zone-evergreen.js:754)
    at zone.scheduleMicroTask (zone-evergreen.js:858)
    at ZoneDelegate.invokeTask (zone-evergreen.js:391)
    at Object.onInvokeTask (core.js:34182)
    at ZoneDelegate.invokeTask (zone-evergreen.js:390)
    at Zone.runTask (zone-evergreen.js:168)
    at drainMicroTaskQueue (zone-evergreen.js:559)
    at ZoneTask.invokeTask [as invoke] (zone-evergreen.js:469)
    at invokeTask (zone-evergreen.js:1603)

是什么引起此问题?

angular ionic4
1个回答
0
投票

事实证明,我对路由使用了延迟加载,但是未能正确导入要加载的页面模块。请注意缺少对then()的呼叫。

{
  path: "references",
  children: [
    {
      path: "",
      loadChildren: () =>
        import(
          "app/applications/requirements/requirements-references/requirements-references.module"
        ).then(m => m.RequirementsReferencesPageModule)
    },
    {
      path: ":referenceId",
      loadChildren: () =>
        import(
          "app/applications/requirements/requirements-references-detail/requirements-references-detail.module"
        )
    }
  ]
}

我错过了导入的then部分。请记住遵循以下模式:

import("path-to-your-module").then(m => m.NameOfModule)

© www.soinside.com 2019 - 2024. All rights reserved.