我在版本~2.1.1
我在这里尝试了答案,但没有任何建议对我有用: Angular 2 Component @Input not working
这是我在另一个组件中使用的微调器组件:
import {Component} from '@angular/core'
import {Post} from './post'
import {PostsService} from './posts.service'
@Component({
selector: 'home',
template: `<h2>Posts</h2>
<spinner [visible]="isloading"></spinner>
<ul *ngFor="let post of posts" class="list-group">
<li class="list-group-item"> {{post.body}} </li>
</ul>
`,
providers:[PostsService],
})
export class PostsComponent{
posts:Post[];
isLoading:boolean = true;
constructor(private _postsService: PostsService){
}
ngOnInit(){
this._postsService.getPosts()
.subscribe(posts => {
this.isLoading = false;
this.posts = posts;
});
}
}
以下是浏览器中输出标签的内容:
<!--template bindings={
"ng-reflect-ng-if": null
}-->
我也尝试初始化&#39;可见&#39;在ngOnInit()中为true,并且微调器将显示但是我无法通过将isloading设置为false来再次隐藏它;
答案 0 :(得分:4)
您的变量在模板和组件之间的名称不同。
在您正在加载的模板中,以及在组件中正在加载&#39;。
套管很重要。