[英]Angular 2 dependency injection not working on service
我正在尝试从Angular 2中的UserService获取静态数据。从文档看一切正常,但由于某种原因它无法正常工作。
这是我的UserComponent.ts
import {Component ,OnInit } from '@angular/core';
import {UsersService} from './users.service';
@Component({
selector: 'users',
template: `<h3>Users </h3>
<ul>
<li *ngFor="let user of users">{{user}}</li>
</ul>
`,
providers:[UsersService]
})
export class UsersComponent {
users;
title;
construct( usersService: UsersService){
this.users=usersService.getUsers();
// i also tried this but no luck. this.users = this.usersService.getUsers();
}
}
这是我的UsersService.ts
import { Injectable } from '@angular/core';
@Injectable()
export class UsersService {
users =['krishna','ravi','ram','ramesh','sita'];
getUsers() {
return this.users ;
}
}
如预期的那样,其输出应为
<h3>Users </h3>
<ul>
<li>Krishna</li>
<li>Ravi</li>
<li>Hari</li>
<li>etc</li>
</ul>
但它不会在* ngFor循环上重复。 我也打印了{{users}},它返回了空白。 请建议我这里的问题是什么。
constructor
存在拼写错误
export class UsersComponent {
users;
title;
constructor( private usersService: UsersService) {
}
ngOnInit() {
this.users = this.usersService.getUsers();
}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.