use*_*254 3 javascript angular
我有一个包含会员信息的服务。这里的变量之一是团队字符串。
在我的组件中,我调用 service 方法将信息放入一个变量中,然后再将其显示在组件中。
我想用服务中唯一的团队列表填充组件中的变量“团队”。这应该考虑到写作(所以我会使用 toUpperCase())。
我的服务:
import { Injectable } from '@angular/core';
@Injectable()
export class UserinfoService
{
//methods or services
getMembers()
{
return [
{
imageUrl: "../assets/images/filler.jpg",
firstName: "filler",
lastName: "filler",
team: "TEAM A",
number: "+123456798",
bio: "Lorem ipsum dolor sit amet,...",
isActive: true
},
{
imageUrl: "../assets/images/filler.jpg",
firstName: "filler",
lastName: "filler",
team: "TEam A",
number: "+123456798",
bio: "Lorem ipsum dolor sit amet,...",
isActive: false
},
{
imageUrl: "../assets/images/filler.jpg",
firstName: "filler",
lastName: "filler",
team: "TEAM B",
number: "+123456798",
bio: "Lorem ipsum dolor sit amet,...",
isActive: true
},
];
}
//constructor
constructor()
{
}
}
Run Code Online (Sandbox Code Playgroud)
我的组件:
import { Component, OnInit } from '@angular/core';
import { UserinfoService } from '../services/userinfo.service';
@Component({
selector: 'app-teammembers',
templateUrl: './teammembers.component.html',
styleUrls: ['./teammembers.component.css']
})
export class TeammembersComponent implements OnInit
{
//props
teammembers: any[];
teams:any[];
constructor(userinfoService: UserinfoService)
{
//getData
this.teammembers = userinfoService.getMembers();
}
ngOnInit() {
}
}
Run Code Online (Sandbox Code Playgroud)
使用 ES6,您可以在一行中实现这一点。下面是一个例子:
Run Code Online (Sandbox Code Playgroud)this.teams = this.teammembers .map(item => item.team) .filter((value, index, self) => self.indexOf(value) === index)
| 归档时间: |
|
| 查看次数: |
10385 次 |
| 最近记录: |