*ngIf 的 Angular2 @Input 不工作(空)
Angular2 @Input for *ngIf is not working (null)
我的版本是 ~2.1.1
我在这里尝试了答案,但没有任何建议对我有用:
这是我在另一个组件中使用的微调器组件:
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
}-->
我还尝试在 ngOnInit() 中将 'visible' 初始化为 true,微调器将显示,但我无法通过将 isloading 设置为 false 来再次隐藏它;
您的变量在模板和组件之间的命名不同。
在模板中您有 'isloading',在组件中 'isLoading'。
大小写很重要。
我的版本是 ~2.1.1
我在这里尝试了答案,但没有任何建议对我有用:
这是我在另一个组件中使用的微调器组件:
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
}-->
我还尝试在 ngOnInit() 中将 'visible' 初始化为 true,微调器将显示,但我无法通过将 isloading 设置为 false 来再次隐藏它;
您的变量在模板和组件之间的命名不同。
在模板中您有 'isloading',在组件中 'isLoading'。
大小写很重要。