Angular-cli: 错误:找不到加载“MyComponent”的主要出口

创建于 2016-10-10  ·  2评论  ·  资料来源: angular/angular-cli

请向我们提供以下信息:

操作系统?

Mac OSX

版本。

角-cli:1.0.0-beta.17
节点:6.7.0
操作系统:达尔文 x64

重现步骤。

迁移 RC4 应用程序以发布。 我用 ng new 生成了一个骨架,我正在从现有项目中迁移代码。

失败给出的日志。

当我尝试去我的路线时 - 他们告诉我组件不存在

logging-error-handler.ts:58Uncaught (in promise):错误:找不到主要出口来加载'StyleGuideComponent'LoggingErrorHandler.handleError @ logging-error-handler.ts:58
logging-error-handler.ts:59Error: Uncaught (in promise): Error: Cannot find primary outlet to load 'StyleGuideComponent'
在 resolvePromise (zone.js:429)
在 zone.js:406
在 ZoneDelegate.invoke (zone.js:203)
在 Object.onInvoke (ng_zone_impl.js:43)
在 ZoneDelegate.invoke (zone.js:202)
在 Zone.run (zone.js:96)
在 zone.js:462
在 ZoneDelegate.invokeTask (zone.js:236)
在 Object.onInvokeTask (ng_zone_impl.js:34)
在 ZoneDelegate.invokeTask (zone.js:235)

提及任何其他可能有用的细节。

这是我的 app-routing.module.ts(简化版):

import { NgModule } from '@angular/core';
import { Routes, RouterModule } from '@angular/router';

import { StyleGuideComponent } from './assets/style-guide/style-guide.component';

const routes: Routes = [
  { path: '', redirectTo: '/style-guide', pathMatch: 'full' },
  { path: 'style-guide', component: StyleGuideComponent }
];

@NgModule({
  imports: [RouterModule.forRoot(routes)],
  exports: [RouterModule],
  providers: []
})
export class MyAppRoutingModule { }

和我的 app.module.ts (再次,简化)

import { BrowserModule } from '@angular/platform-browser';
import { NgModule } from '@angular/core';
import { FormsModule } from '@angular/forms';
import { HttpModule } from '@angular/http';
import { RouterModule } from '@angular/router';

import { AppComponent } from './app.component';
import { MaterialModule } from '@angular/material';

import { MyAppRoutingModule } from './app-routing.module';

import { StyleGuideComponent } from './assets/style-guide/style-guide.component';

@NgModule({
  declarations: [
    AppComponent,
    StyleGuideComponent

  ],
  imports: [
    BrowserModule,
    FormsModule,
    RouterModule,
    HttpModule,
    MaterialModule.forRoot(),
    MyAppRoutingModule
  ],

  providers: [],
  bootstrap: [AppComponent]
})
export class AppModule { }

我在尝试路由到任何其他组件时遇到同样的问题....有什么想法吗?

最有用的评论

好的,很抱歉污染了水……结果证明这是路由的行为改变。 我会把它留在这里以防它帮助别人。

我的<router-outlet>周围有一个条件 - 这不再起作用了。

<div class="main-body" *ngIf="user && user.authorized">
  <router-outlet></router-outlet>
</div>

角度/角度#11100

你需要使用路由守卫
https://angular.io/docs/ts/latest/guide/router.html#! #守卫
https://angular.io/docs/ts/latest/guide/router.html#! #resolve-guard

谢谢——乍得

所有2条评论

好的,很抱歉污染了水……结果证明这是路由的行为改变。 我会把它留在这里以防它帮助别人。

我的<router-outlet>周围有一个条件 - 这不再起作用了。

<div class="main-body" *ngIf="user && user.authorized">
  <router-outlet></router-outlet>
</div>

角度/角度#11100

你需要使用路由守卫
https://angular.io/docs/ts/latest/guide/router.html#! #守卫
https://angular.io/docs/ts/latest/guide/router.html#! #resolve-guard

谢谢——乍得

由于不活动,此问题已自动锁定。
如果您遇到类似或相关的问题,请提交新问题。

阅读更多关于我们的自动对话锁定政策

_此操作已由机器人自动执行。_

此页面是否有帮助?
0 / 5 - 0 等级