typescript - Contacts.find(fields,options) 仅针对离子中 for 循环内的最后一个元素执行?
问题描述
我有一个联系人数组,我迭代这个数组中的每个元素并创建一个联系人对象,然后在保存到设备联系人之前,我使用 contacts.find() 检查它是否已经存在于设备联系人中。但是由于这个完整的过程发生在 for 循环中。contacts.find() 仅对最后一个元素执行。
private(contacts:Contact)
{
//constructor
}
somefunc()
{
for (var i = 0; i < data.length; i++)
{
let contact: Contact = this.contacts.create();
contact.name = new ContactName(null, lastName, firstName, middleName);
contact.photos = [new ContactField("base64", "dfdgsf/nbbbb/hv....", true)];
contact.phoneNumbers = [new ContactField("454******", "mobile", true)];
this.contacts.find(
["displayName", "phoneNumbers", "emails"],
{ multiple: true, filter: "Sam", hasPhoneNumber: false })
.then((contactsArray) =>
{
//do something
/*based on result we will decide whether to save as a new contact or modify the existing contact*/
},(error) =>
{
console.log(error);
});
}
}
解决方案
推荐阅读
- python - 我如何对列进行分组并获取最新时间?
- c# - 转换为 Hex 2s 补码
- loops - 在 ST monad 内循环
- javascript - 在哪个浏览器中,我可以在后台选项卡中使用“dispatchevent”?
- java - How to Allow Webview Accessing Online Video Using Android Video Player Application?
- javascript - 使用正则表达式在数字字段中排除 0 和范围
- excel - How to dynamically lock and unlock a cell in Excel?
- python - 深度优先搜索python
- video-streaming - VLC displaying only a small portion of the output then crashes when reading SDP file
- c# - How to fix " The property is set more than once"?