如果不指定整个路径,Ionic 4 导航错误

Ionic 4 navigation error if don't specify whole path

我有这样的登录路径

{ path: 'login', loadChildren: 'src/app/auth/login/login.module#LoginPageModule' },

如果我将标签插入我的应用程序,并定义路径

path: '',
component: TabsPage,
children: [
  { path: 'settings', loadChildren:'./settings/settings.module#SettingsPageModule' },]

当我再次尝试 运行 我的应用程序时,出现这样的错误

"ERROR in Could not resolve module /app/auth/login/login.module relative to src/app/app-routing.module.ts"

然后当我用 "src" 登录路径和选项卡路径指定路由时

{ path: 'login', loadChildren: 'src/app/pages/auth/login/login.module#LoginPageModule' },

我看过很多教程,但没有人遇到过这个问题。 我是这样解决的,不知道对不对

你的错误说明了一切。您需要指定路由 relative 到 app-routing.module.ts.

"ERROR in Could not resolve module /app/auth/login/login.module relative to src/app/app-routing.module.ts"

如果登录文件夹在应用程序目录中,则 PageModule 的相对路径为:

{ path: 'login', loadChildren: './login/login.module#LoginPageModule' },

在你的情况下,相对路线是:

{ path: 'login', loadChildren: './pages/auth/login/login.module#LoginPageModule' }


app-routing.module.ts 中定义的所有路由将不显示标签栏。如果你想将标签栏设置为你的入口点,你需要将默认路由('')指向你的标签模块。然后在tabs.router.module.ts.

定义所有需要显示tabbar的路由

app-routing.module.ts

{ path: '', loadChildren: './tabs/tabs.module#TabsPageModule' },

tabs.router.module.ts

const routes: Routes = [
  {
    path: 'tabs',
    component: TabsPage,
    children: [
      {
        path: 'home',
        children: [
          {
            path: '',
            loadChildren: '../home/home.module#HomePageModule'
          }
        ]
      },
// ...

在您的路由模块中试试这个片段:

应用程序路由-module.ts

{ path: 'login', loadChildren: './pages/auth/login/login.module#LoginPageModule' }