Angular2子组件使用Router显示但不显示父列表

时间:2016-12-05 11:15:02

标签: angular angular2-routing angular2-directives

我在Angular2中使用路由器(测试版17.到目前为止,无法使RC与rails配合使用)。 它一切正常,直到我只是在一个组件内部设置组件作为路径。

一旦我这样做了,Route就会只显示Child组件,而不再显示原本应该在那里的父列表。

这让我发疯了......

所以路由器配置:

@RouteConfig([
  {
    path: '',
    name: 'Home',
    component: MainComponent
  },
  {
    path: '/demo-component/:id',
    name: 'Demo Component Details',
    component: DemoComponentDetail
  },
])

主要组成部分:

<h1>Hello</h1>
<filter></filter>
<div *ngFor="let d of demo_components">
<p>{{ d.Name }}</p>
</div>

主要成分ts:

    import {Component} from 'angular2/core'
import {Router} from 'angular2/router'
import {DemoComponentService} from '../shared/demo-component.service'
import {FilterComponent} from '../filters/filter.component'

@Component({
  selector: 'main',
  templateUrl: '/app/demo-components/main.component.html',
  directives: [ FilterComponent ]
})

export class MainComponent{
  demo_components: any[]
  constructor(private router:Router, private service: DemoComponentService){
    this.demo_components = this.service.getAllDemoComponents();
  }

这是我不明白的地方: 如果我删除子组件的指令,我的列表运行良好(但我当然失去了过滤器组件)。 但是如果我按原样保留指令,那么我的List(* ngFor)不再显示,只显示过滤器子组件......

发生了什么事?你能否在Route使用的父组件中有一个简单的组件?

0 个答案:

没有答案