1 回答
TA贡献2041条经验 获得超4个赞
你应该像这样更新你的数据,它更容易..
mContacts = [
{
name: '',
number: '',
},
...
];
您需要将您的 pickContact 函数放入带有联系人对象的 ion-card 中,以准确了解您想要选择的联系人。
让联系人 --> 让联系人(这是一个联系人)
<ion-item-group *ngFor="let contact of mContacts">
<ion-card (click)="pickContact(contact)">
<ion-item lines = "none">
<ion-label class="ion-text-wrap">Name: {{contact.name}}</ion-label>
</ion-item>
<ion-item lines = "none" >
<ion-label class="ion-text-wrap">Number: {{contact.number}}
</ion-label>
</ion-item>
</ion-card>
</ion-item-group>
然后在你的组件中
...
pickContact(contact) {
this.contacts.pickContact().then((contacts) => {
contacts.forEach(c => {
if (c.name === contact.name ) {
// Do the matching
const contactToUpdate = mContacts.find(c => c.name === contact.name)
contactToUpdate.name = c.name;
contactToUpdate.number = c.number;
}
})
});
}
我在这里没有看到确切的用例,但这是您可以做的事情.. 当然有更好的方法来做到这一点,但我更喜欢保持简单。
关于这一点的一件事
name: [''] --> 这是一个字符串数组,所以要得到值,你需要做mContacts[0].name[0] --> 你会得到数组的第一项并记录他的名字,但我不明白为什么你在这里有一个数组......
你可以使用 lodash 来做一些事情Lodash
希望我能帮上忙
添加回答
举报