求助:关于angular2+ @Input有一处不理解
1. 问题,不太理解ngx-bootstrap示例中的的@Input使用方法
hero-parent.component.ts
@Component({
selector: 'app-hero-parent',
template: `
<h2>{{master}} controls {{heroes.length}} heroes</h2>
<app-hero-child *ngFor="let hero of heroes"
[hero]="hero"
[master]="master">
</app-hero-child>
`
})
export class HeroParentComponent {
heroes = HEROES;
master = 'Master';
}
hero-child.component.ts
@Component({
selector: 'app-hero-child',
template: `
<h3>{{hero.name}} says:</h3>
<p>I, {{hero.name}}, am at your service, {{masterName}}.</p>
`
})
export class HeroChildComponent {
@Input() hero: Hero;
@Input('master') masterName: string;
}
ngx-bootstrap中Alert组件部分@Input的使用:
demo/.../alerts/.../basic/basic/html:
<alert type="success" test="123">
<strong>Well done!</strong> You successfully read this important alert message.
</alert>
src/alert/alert.components.ts:
@Component({
selector: 'alert,bs-alert',
templateUrl: './alert.component.html'
})
export class AlertComponent implements OnInit {
@Input() type = 'warning';
...
ngOnInit(): void {
console.log('type:'+ this.type);
...
}
...
}
2. 疑问: 当我尝试去把ngx-bootstrap中base.html处的type="warning"修改为[type]="warning"时,获取不到值,控制台打印undefined。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
知道结果了:
如果属性不添加[]则angular认为其值为一个不会改变的字符串,如果添加[]则angular认为其值为变量。