Я пишу приложение Ionic, которое использует родные ионные контакты (на основе cordova-plugin-contacts) для добавления и обновления информации о контактах.
Добавление нового контакта (создание) работает отлично, но как только япопытаться сохранить (обновить существующего пользователя), он игнорирует часть моего ввода (массивы?) и сохраняет старый после сохранения.Мое первое предположение было, что была проблема с параметрами url и ims, но кажется, что эта проблема возникает со всеми массивами, а не со строковыми элементами.
Как воспроизвести:
let find = new ContactFindOptions()
find.filter = 0 // Some ID
let contact = await this.contacts.find(["id"], find)
contact.note = 'New note' // This works
contact.urls = [new ContactField("SomeValue", "http://www.example.com")] // This does not work
console.log(contact)
let result = await contact.save()
console.log(result)
Результатпокажет «обновленный» контент, и вы заметите, что URL-адрес является нулевым, пока примечание было установлено.То же самое я заметил для писем.Так что он просто игнорирует мой ввод и сохраняет старую информацию для всех параметров массива.
Это ошибка в контактах Cordova (я использую последнюю версию и пробовал версию несколько выпусков назад тоже с тем же результатом) или яЯ что-то не так делаю?
Я создал простое ионное тестовое приложение, которое точно показывает, какие действия не удаются: https://github.com/Bramzor/ionic-native-contacts-tests