我正在尝试学习Angular 2,经过大量错误消息后我终于得到了路线工作,我可以显示我想要的组件。现在我想显示我的主页组件,我希望这个组件中有一个导航栏组件。
Home.ts:
import {Component, View} from 'angular2/core';
import {Navbar} from './navbar/navbar'
@Component({
selector: 'home'
})
@View({
templateUrl: '/app/home/home.html'
})
export class Home {
constructor:(public navbar: Navbar) {
}
}
home.html的:
<p>NICE!</p>
<navbar></navbar>
navbar.ts:
import {Component, View} from 'angular2/core';
@Component({
selector: 'navbar'
})
@View({
template: `
<ul>
<li>This is the navbar</li>
</ul>
`
})
export class Navbar{
}
主页正在显示,但是当我检查时,标签只会保留<navbar></navbar>
。我做错了什么?
答案 0 :(得分:11)
如果你想要navbar
组件,你需要将它添加到父组件的directives
属性中,而不是它的构造函数中,如下所示:
@Component({
selector: 'home',
templateUrl: '/app/home/home.html',
directives: [ Navbar ]
})
export class Home {
constructor() {
}
}